SQL Server - Problemas para seleccionar registros con SELECT

   
Vista:

Problemas para seleccionar registros con SELECT

Publicado por Omar omar_ponce2001@hotmail.com (3 intervenciones) el 21/05/2013 23:09:27
Tengo una tabla de movimientos de facturas emitidas y pagos, puede haber varios movimientos por cada factura sobre todo por pagos parciales.La emision de la factura va en la columna debe y los pagos al haber, la suma de debe-haber me informa si la factura esta cancelada o no.
Necesito mediante una select generar todas las facturas de un cliente que tengan saldo pendiente
(es decir la suma de debe-haber diferente de 0) por cada factura del cliente.
Arme esta select que funciona pero solo muestra el saldo de la factura, necesito me muestre
todos los movimientos parciales que generan ese saldo.


SELECT nrofac,SUM(debe-haber) AS Total ;
FROM c_mov ;
WHERE nrocli = 10191 ;
GROUP BY nrofac ;
HAVING SUM(debe-haber) <> 0


Ojala me haya expresado bien, y muchas gracias de antemano por la atencion
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Problemas para seleccionar registros con SELECT

Publicado por xve (86 intervenciones) el 22/05/2013 07:44:03
Hola Omar, creo que asín te puede funcionar:
1
2
3
4
5
6
7
8
9
10
SELECT * FROM
c_mov LEFT JOIN
(
    SELECT nrofac,SUM(debe-haber) AS Total ;
    FROM c_mov ;
    WHERE nrocli = 10191 ;
    GROUP BY nrofac ;
    HAVING SUM(debe-haber) <> 0
) S1
ON c_mov.nrofac=S1.nrofac


Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problemas para seleccionar registros con SELECT

Publicado por Omar omar_ponce2001@hotmail.com (3 intervenciones) el 22/05/2013 20:10:08
Estimado xve, muchas gracias por tu amable y pronta respuesta

Probé la sentencia que me aconsejaste en una tabla de prueba y en principio funciona bien, hace la sumatoria de los saldos por factura, el problema es que no hace la seleccion del cliente especificado sino que me trae todos y ademas como en la columna total aparece el valor NULL en lugar de ceros para las facturas canceladas tambien los trae, no es lo que necesito pero por lo menos tengo identificados aquellos registros que sirven.
Voy a seguir intentando, sino agradeceria tu inestimable ayuda
Un abrazo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Problemas para seleccionar registros con SELECT

Publicado por xve (86 intervenciones) el 22/05/2013 22:56:19
Hola Omar, perdon, tienes razón, tendrias que hacer el where fuera...algo así:
1
2
3
4
5
6
7
8
9
10
SELECT * FROM
c_mov LEFT JOIN
(
    SELECT nrofac,SUM(debe-haber) AS Total ;
    FROM c_mov ;
    GROUP BY nrofac ;
    HAVING SUM(debe-haber) <> 0
) S1
ON c_mov.nrofac=S1.nrofac
WHERE c.nrocli = 10191 ;

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problemas para seleccionar registros con SELECT

Publicado por Omar (3 intervenciones) el 23/05/2013 20:32:09
Gracias xve, problema solucionado, solamente me muestra algunos registros con total NULL, pero es un tema menor y facilmente solucionable.
Nuevamente muchas gracias por tu amabilidad
Un abrazo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar