Entrar
¿Nuevo usuario? Inscribirme
DesarrolloDelphi · Desarrollo de Software en Borland Delphi
? ¿Ya estás suscrito? Entra a Yahoo!

Consejos

¿Sabías que...?
Podés añadir enlaces a sitios relacionados de tu grupo.

Mensajes

  Mensajes Ayuda
Avanzado
TQuery "rompecabezas"...   Lista de mensajes  
Responder | Reenviar Mensaje #6547 de 7334 |
Re: TQuery "rompecabezas"...

SELECT CORTE, SUM(IF(CANTIDAD>0,CANTIDAD,0)) AS CANTIDAD,SUM(CANTIDAD)
AS SALDO FROM tabla GROUP BY CORTE

Eso no se puede hacer con el LocalSQL (BDE) porque no tiene la función
IF, lo más próximo que podrías obtener en una única consulta sería:
SELECT CORTE, 0 AS CANTIDAD, SUM(CANTIDAD) FROM tabla GROUP BY CORTE
UNION
SELECT CORTE, SUM(CANTIDAD), 0 FROM tabla WHERE CANTIDAD>0 GROUP BY CORTE

Si necesitás tener ambos datos en una única fila tendrías que crear
una tabla intermedia (con la consulta anterior por ejemplo) y luego hacer:

SELECT CORTE, SUM(CANTIDAD), SUM(SALDO) FROM intertabla GROUP BY CORTE

--- En DesarrolloDelphi@..., Walter <wmeson@...> escribió:
>
> Tengo el siguiente problema, tengo una tabla dbf con estos datos :
> CORTE LOTE CANTIDAD
> 1245 A 150
> 1245 B 150
> 1245 C 150
> 1245 A -150
> 1245 B -148
> 1245 C -148
>
> A los que le aplico una TQuery y lo que necesito es lograr este
resultado :
>
> CORTE CANTIDAD SALDO
> 1245 450 4
> Es decir, obtener la cantidad total de cortes y a su vez, el saldo
> restante (conformado por las cantidades negativas)
> Por mas que intento, no hay caso, no logro llegar a ese resultado (la
> tabla tiene muchos datos con distinto numero de corte).
> Una vez vi algo parecido por ahi, o sea, sé que se puede lograr,
pero no
> sé cómo...
> ¿Alguna idea/sugerencia...?
> Desde ya, muchas gracias.
> Walter
>





Jue, 5 de Jul, 2007 11:51 am

dnabdala
Sin conexión Sin conexión
Enviar correo Enviar correo

Reenviar Mensaje #6547 de 7334 |
Desplegar mensajes Autor Ordenar por fecha

Tengo el siguiente problema, tengo una tabla dbf con estos datos : CORTE LOTE CANTIDAD 1245 A 150 1245 B 150 1245...
Walter
waltermeson
Sin conexión Enviar correo
4 de Jul, 2007
8:09 pm

SELECT CORTE, SUM(IF(CANTIDAD>0,CANTIDAD,0)) AS CANTIDAD,SUM(CANTIDAD) AS SALDO FROM tabla GROUP BY CORTE Eso no se puede hacer con el LocalSQL (BDE) porque no...
David Abdala
dnabdala
Sin conexión Enviar correo
5 de Jul, 2007
11:53 am

David... Gracias por tu ejemplo, lo segui al pie de la letra y me resultó para lo que necesitaba (cuan verde estoy en experiencia con SQL y Delphi...). ... Y...
Walter
waltermeson
Sin conexión Enviar correo
5 de Jul, 2007
9:55 pm
Avanzado

Copyright © 2009 Yahoo! de Argentina S.R.L. Todos los derechos reservados.
Política de privacidad - Condiciones del Servicio - Reglas de la comunidad de Yahoo! - Ayuda