Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-08-2006
Walterdf Walterdf is offline
Miembro
 
Registrado: may 2003
Ubicación: Buenos Aires
Posts: 152
Poder: 22
Walterdf Va por buen camino
Calcular un saldo respecto a 2 tablas

Buenas
Necesito ayuda para armar esta consulta.
Tengo una base de datos FireBird con dos tablas de esta manera:

STOCK con los campos deposito, codigo, marca, saldo
RETIRO con los campos deposito, codigo, marca, cantidad

necesito descontar del saldo del stock la cantidad que corresponda, o sea, donde
STOCK.deposito = RETIRO.deposito y
STOCK.codigo = RETIRO.codigo y
STOCK.marca = RETIRO.marca
hacer STOCK.saldo = STOCK.saldo - RETIRO.cantidad

Si alguien puede darme una mano se lo agradeceré.
Saludos.

Walter
Responder Con Cita
  #2  
Antiguo 15-08-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Así a bote pronto creo que tú mismo te has contestado:

Código SQL [-]
select stock.saldo - retiro.cantidad
from stock,retiro
where
  stock.deposito = retiro.deposito and
  stock.codigo = retiro.codigo and
  stock.marca = retiro.marca

Lo que me parece extraño es que da la imprensión de que tienes una relación 1-1 entre stock y retiro, de manera que no sé por qué no están en una misma tabla.

// Saludos
Responder Con Cita
  #3  
Antiguo 15-08-2006
Walterdf Walterdf is offline
Miembro
 
Registrado: may 2003
Ubicación: Buenos Aires
Posts: 152
Poder: 22
Walterdf Va por buen camino
Gracias Roman
El código que me pasaste realiza la operación pero no actualiza el campo saldo de la tabla stock.

En realidad la relacion no es de 1-1, esto era para usar solo en este caso por un retiro que se hizo a "mano" en un excel y para no descontar uno a uno cada codigo migré el excel a una tabla y con la consulta realicé el descuento.

Gracias nuevamente.

Walter
Responder Con Cita
  #4  
Antiguo 15-08-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Para actualizar la tabla usa una sentencia UPDATE:

Código SQL [-]
update
  stock a
set
  a.saldo = (
    select
      b.saldo - c.cantidad
    from
      stock b,
      retiro c
    where
      b.deposito = c.deposito and
      b.codigo = c.codigo and
      b.marca = c.marca and
      b.idstock = a.idstock) /* Campo clave de la tabla stock */

Esto te debería funcionar, pruebalo...


Saludos...
Responder Con Cita
  #5  
Antiguo 15-08-2006
Walterdf Walterdf is offline
Miembro
 
Registrado: may 2003
Ubicación: Buenos Aires
Posts: 152
Poder: 22
Walterdf Va por buen camino
Mil gracias a todos!!! funcionó bien!!
Saludos.

Walter
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Arrastrar un valor de Saldo dentro de un QRExpr kikodelphi Impresión 2 27-09-2005 22:00:29
Como puedo actualizar el saldo teniendo encuenta el tipo olbeup SQL 3 04-09-2005 04:01:05
respecto a forms pablo OOP 1 23-03-2005 02:33:54
SQL que actualice campo saldo arrastrado Tomás SQL 4 23-04-2004 16:14:04
Respecto a ejecutable pzala Varios 7 19-04-2004 17:04:07


La franja horaria es GMT +2. Ahora son las 16:21:47.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi