Dúvidas em uma query para somar vários campos

Firebird

07/08/2003

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


Luizbhering

Luizbhering

Curtidas 0

Respostas

Afarias

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+


GOSTEI 0
POSTAR