SQL - Select con sub select

 
Vista:
sin imagen de perfil
Val: 6
Ha aumentado su posición en 5 puestos en SQL (en relación al último mes)
Gráfica de SQL

Select con sub select

Publicado por DUILIO (4 intervenciones) el 03/06/2022 22:17:22
Buenas tardes, tengo la siguiente situcion,


1
2
SELECT T_COMP_CAN, N_COMP_CAN, IMPORT_CAN
FROM GVA07 WHERE N_COMP_CAN='X0000800001266'

el resultado es...

T_COMP_CAN N_COMP_CAN IMPORT_CAN
REC X0000800001266 65157.2900000
REC X0000800001266 919.6200000

ahora agrupando los comprobantes y sumandolos

1
2
3
4
5
SELECT T_COMP_CAN, N_COMP_CAN,
SUM (IMPORT_CAN) as IMPUTADO
FROM gva07
WHERE N_COMP_CAN='X0000800001266'
GROUP BY T_COMP_CAN, N_COMP_can


obtengo el siguiente es....

T_COMP_CAN N_COMP_CAN IMPUTADO
REC X0000800001266 66076.9100000

esta consulta la utilizo para totalizar el campo imputado que puede tener mas de un registro y lo necesito sumar a otro query


esta es la otra consulta

1
2
3
SELECT        T_COMP, N_COMP , IMPORTE
FROM            GVA12
WHERE        T_COMP <> 'FAC'AND N_COMP = 'X0000800001266'

con este resultado, aqui el registro es unico en la tabla GVA12

T_COMP N_COMP IMPORTE
REC X0000800001266 116283.6000000

ahora necesito hacer una consulta donde me agregue el resultado a de la primera consulta a la anterior table GVA12
ahora esta consulta pero el resultado no es el esperado, necesito solo 1 renglon por comprobante


1
2
3
4
5
6
7
8
SELECT     GVA12.T_COMP, GVA12.N_COMP, GVA12.IMPORTE,
                             (SELECT SUM(IMPORT_CAN)
                               FROM            GVA07
                               WHERE        (GVA12.T_COMP=T_COMP_CAN ) AND (GVA12.N_COMP=N_COMP_CAN )  AND N_COMP_CAN='X0000800001266'
                               GROUP BY T_COMP_CAN, N_COMP_CAN) AS IMPUTADO
FROM            GVA12 INNER JOIN
                         GVA07 AS GVA07_1 ON GVA12.N_COMP = GVA07_1.N_COMP_CAN AND GVA12.T_COMP = GVA07_1.T_COMP_CAN
WHERE        (GVA12.T_COMP <> 'FAC')  AND N_COMP_CAN='X0000800001266'

pero el resultado que tengo es el siguiente

T_COMP N_COMP IMPORTE IMPUTADO
REC X0000800001266 116283.6000000 66076.9100000
REC X0000800001266 116283.6000000 66076.9100000

siendo que en la tabla GVA12 tengo 1 solo registro,
me muestra la cantidad de registros con la suma que tengo en la 1º consulta y con la cantidad de registros que tengo en esa consulta.

agradecería un poco de ayuda
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