Dúvidas em uma query para somar vários campos
Esta query executa no SQL, Oracle e no Paradox mas não executa no Interbase. O erro é :
invalid request BLR at offset 465
context already in use (BLR error)
A query é:
SELECT DISTINCT
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$38´ ) AS FGTS_MES,
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$01´ ) AS INSS
FROM DP_CALCULO WHERE NUM_SEQ_FOLHA = 7
invalid request BLR at offset 465
context already in use (BLR error)
A query é:
SELECT DISTINCT
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$38´ ) AS FGTS_MES,
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$01´ ) AS INSS
FROM DP_CALCULO WHERE NUM_SEQ_FOLHA = 7
Luizbhering
Curtidas 0
Respostas
Afarias
07/08/2003
Me parece q o IB não é capaz de rodar este SQL -- q inclusive, não parece ter lógica.
uma forma de fazer o q vc quer é (e muito mais eficiente):
SELECT
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$38´ ) AS FGTS_MES,
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$01´ ) AS INSS
FROM RDB$DATABASE;
ou ainda:
SELECT COD_EVENTO, SUM(VAL_EVENTO) FROM DP_CALCULO
WHERE NUM_SEQ_FOLHA = 7
GROUP BY COD_EVENTO;
T+
uma forma de fazer o q vc quer é (e muito mais eficiente):
SELECT
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$38´ ) AS FGTS_MES,
(SELECT SUM (VAL_EVENTO) FROM DP_CALCULO WHERE
NUM_SEQ_FOLHA = 7 AND COD_EVENTO = ´$$01´ ) AS INSS
FROM RDB$DATABASE;
ou ainda:
SELECT COD_EVENTO, SUM(VAL_EVENTO) FROM DP_CALCULO
WHERE NUM_SEQ_FOLHA = 7
GROUP BY COD_EVENTO;
T+
GOSTEI 0