Fórum vejam se dá para fazer (SQL) #56960
27/09/2006
0
Eu tenho um sql que funciona perfeitamente em Oracle. Fui passar para o firebird e dá erro....
É um agrupamento com duas tabelas.
São duas tabelas diferentes onde são digitados gastos.
E nesta query é feito uma união das duas.
Dá erro no segundo select. Não aceita.
Como posso resolver o problema?
Vejam abaixo:
select a.prd prd, sum(a.quant) sq, a.setor setor, a.valor
from
(select prdcodigo prd, sum (saiquantfaturam) quant, r1.ccudestino setor, saivalor valor
from hcsaida s1,hcrequis r1 where r1.reqcodigo=s1.reqcodigo
and ctfcodigo=:ctfcodigo and s1.concodigo=:concodigo and saiquantfaturam>0
and saivalor>0
group by prdcodigo, r1.ccudestino, saivalor
union all
select prdcodigo prd, sum (dipquant) quant, c1.ccucodigo setor, dipvalor valor
from hcdigiprod d1,hccompprod c1 where d1.cprcodigo=c1.cprcodigo
and ctfcodigo=:ctfcodigo and d1.concodigo=:concodigo and dipquant>0
and dipvalor>0
group by prdcodigo, c1.ccucodigo, dipvalor
) a
where quant>0
group by prd, setor, valor
É um agrupamento com duas tabelas.
São duas tabelas diferentes onde são digitados gastos.
E nesta query é feito uma união das duas.
Dá erro no segundo select. Não aceita.
Como posso resolver o problema?
Vejam abaixo:
select a.prd prd, sum(a.quant) sq, a.setor setor, a.valor
from
(select prdcodigo prd, sum (saiquantfaturam) quant, r1.ccudestino setor, saivalor valor
from hcsaida s1,hcrequis r1 where r1.reqcodigo=s1.reqcodigo
and ctfcodigo=:ctfcodigo and s1.concodigo=:concodigo and saiquantfaturam>0
and saivalor>0
group by prdcodigo, r1.ccudestino, saivalor
union all
select prdcodigo prd, sum (dipquant) quant, c1.ccucodigo setor, dipvalor valor
from hcdigiprod d1,hccompprod c1 where d1.cprcodigo=c1.cprcodigo
and ctfcodigo=:ctfcodigo and d1.concodigo=:concodigo and dipquant>0
and dipvalor>0
group by prdcodigo, c1.ccucodigo, dipvalor
) a
where quant>0
group by prd, setor, valor
Briciosm
Curtir tópico
+ 0
Responder
Posts
27/09/2006
Sremulador
amigo já passei por isso, verifique o sub -select pois o problema esta lá...
Responder
Gostei + 0
27/09/2006
Briciosm
select * from (select a1.atecodigo from hcatendim a1) a;
Olha o erro que dá no firebird:
ISC ERROR CODE:335544569
ISC ERROR MESSAGE:
Dynamic SQL Error
SQL error code = -104
Token unknown - line 1, char 16
select
Statement: select * from (select a1.atecodigo from hcatendim a1) a
Olha o erro que dá no firebird:
ISC ERROR CODE:335544569
ISC ERROR MESSAGE:
Dynamic SQL Error
SQL error code = -104
Token unknown - line 1, char 16
select
Statement: select * from (select a1.atecodigo from hcatendim a1) a
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)