Select con sub select
Publicado por DUILIO (4 intervenciones) el 03/06/2022 22:17:22
Buenas tardes, tengo la siguiente situcion,
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
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
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
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
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


0