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 26-01-2013
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
Restar entre dos Tabla en SQL2000

hola amigos les cuento que tengo dos tablas Facturacion y Proveedores en la cual realizo una resta simple la cual es la existencia de los productos que viene siendo

Existencia = cantdad compra -cantidad venta

e hecho una consulta donde me realiza esa operacion todo bien siempre y cuando solo exista un registro de un producto en la tabla facturacion pero cuando existen dos registro del producto en esa misma tabla no me muestra los resultado esperado

por ejemplo si tengo el producto Refresco con dos registro uno con una venta de 5 y otro con una venta de 4 el resultado de esas venta viene siendo 9 y restado con la cantdad de compra de ese producto que es 100 deberia mostrarme 91 de existencia pero lo que me muestra es
191 aqui esta la consulta de SQL que tengo


Código SQL [-]
SELECT COMPRASPROVEEDORES.IDPRODUCTO,COMPRASPROVEEDORES.PRODUCTO,
  COMPRASPROVEEDORES.CANTIDAD,SUM(COMPRASPROVEEDORES.CANTIDAD - FACTURACION.CANTIDAD) AS EXISTENCIA,
  COMPRASPROVEEDORES.PRECIOCOSTO
  FROM COMPRASPROVEEDORES INNER JOIN FACTURACION ON COMPRASPROVEEDORES.IDPRODUCTO = FACTURACION.IDPRODUCTO
  
  GROUP BY COMPRASPROVEEDORES.IDPRODUCTO,COMPRASPROVEEDORES.PRODUCTO,
  COMPRASPROVEEDORES.CANTIDAD,COMPRASPROVEEDORES.PRECIOCOSTO
Responder Con Cita
  #2  
Antiguo 26-01-2013
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Seguro no entiendo pero donde estas restando, no existe un update solo un select.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 27-01-2013
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
la resta la hago en esta linea no se si lo estaria haciendo mal ya que todas las operaciones aritmetica siempre la e hecho de esta forma no veo porque usar update
SUM(COMPRASPROVEEDORES.CANTIDAD - FACTURACION.CANTIDAD) AS EXISTENCIA

Última edición por kurono fecha: 27-01-2013 a las 01:04:35.
Responder Con Cita
  #4  
Antiguo 27-01-2013
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
amigo me autorespondo e solucionado mi problema simplemente modificando esta linea

Código SQL [-]
SUM(COMPRASPROVEEDORES.CANTIDAD - FACTURACION.CANTIDAD) AS EXISTENCIA

y dejandola de esta manera

Código SQL [-]
 SUM(DISTINCT COMPRASPROVEEDORES.CANTIDAD) - SUM(DISTINCT FACTURACION.CANTIDAD) AS EXISTENCIA
Responder Con Cita
  #5  
Antiguo 27-01-2013
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Por eso dije que seguro no entendia el problema, lo que querías es mostrar una resta, no restar en la tabla.
El titulo dice que quieres restar de dos tablas por eso pensé en el update.
Me alegro que lo pudieras solucionar.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 27-01-2013
Avatar de kurono
[kurono] kurono is offline
Miembro Premium
 
Registrado: jul 2007
Ubicación: Republica Dominicana
Posts: 1.126
Poder: 18
kurono Va por buen camino
perdona por el titulo la proxima vez le presentare un titulo mas entendible
Responder Con Cita
  #7  
Antiguo 28-01-2013
aposi aposi is offline
Miembro
 
Registrado: dic 2006
Posts: 146
Poder: 18
aposi Va por buen camino
Hola, creo que de esta manera si tienes 2 ventas de 5 no te restara 10 a las compras
Código SQL [-]
 SUM(DISTINCT COMPRASPROVEEDORES.CANTIDAD) - SUM(DISTINCT FACTURACION.CANTIDAD) AS EXISTENCIA


De esta manera te sumaria todas las compras y las restaria a todas las ventas
Código SQL [-]
SUM(COMPRASPROVEEDORES.CANTIDAD) - SUM(FACTURACION.CANTIDAD) AS EXISTENCIA
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
restar entre 2 tablas de mysql y mostrar en reporte edgar_prospero Varios 68 07-09-2012 21:58:11
Realizar Join entre n1 líneas de una tabla y n2 líneas de otra tabla gluglu SQL 7 15-04-2011 20:33:19
Error al restar registros Entre Tablas Lenny Varios 3 18-01-2011 14:03:33
Restar/Sumar entre DBGrid's Lenny Varios 5 02-07-2010 13:54:13
restar horas y devolver la diferencia en tiempo entre ellas douglas OOP 1 24-10-2007 11:28:44


La franja horaria es GMT +2. Ahora son las 06:22:54.


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