Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Agrupacion en una UNION (https://www.clubdelphi.com/foros/showthread.php?t=66955)

emeritos 22-03-2010 12:42:14

Agrupacion en una UNION
 
Hola dilferos.
Vamos a ver si me explico:
Lo que quiero hacer en esta sentencia:

SELECT A.fecha, SUM(A.cantidad), CO.precio, CO.nombre_concepto,
SUM(A.cantidad * CO.precio) AS importe
FROM albaranes A, conceptos CO
WHERE (A.cod_concepto = CO.cod_concepto)
GROUP BY CO.nombre_concepto

UNION

SELECT A.fecha, SUM(A.cantidad), CO.precio, CO.nombre_concepto,
SUM(A.cantidad * CO.precio) AS importe
FROM albaranes_ext A, conceptos CO
WHERE (A.cod_concepto = CO.cod_concepto)
GROUP BY CO.nombre_concepto
ORDER BY 6

es agrupar por el CO.nombre_concepto (esta sentencia sale bien) pero quiero agrupar todas las filas que salgan (como el ORDER BY), tal y como esta, agrupa la de una SELECT y despues la de la otra SELECT y me salen dos filas con el mismo concepto por que vienen de distintos ficheros, y quiero que solo salga una sola fila.

Gracias.

Caro 22-03-2010 14:29:08

Hola emeritos, prueba esto:

Código SQL [-]
SELECT T.fecha, SUM(T.cantidad), T.precio, T.nombre_concepto,
SUM(T.cantidad * T.precio) AS importe
From (SELECT A.fecha, A.cantidad, CO.precio, CO.nombre_concepto,
         FROM albaranes A, conceptos CO
         WHERE (A.cod_concepto = CO.cod_concepto)
         UNION
         SELECT A.fecha, SUM(A.cantidad), CO.precio, CO.nombre_concepto, 
         FROM albaranes_ext A, conceptos CO
         WHERE (A.cod_concepto = CO.cod_concepto) ) as T
GROUP BY T.nombre_concepto
............................

Saluditos


La franja horaria es GMT +2. Ahora son las 12:26:08.

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