select dentro de um select em banco firebird
Bom dia , a todos.
Olhei uns exemplos de select dentro de um select estou tentando fazer um aqui e me retorna o seguinte erro:
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
count of column list and variable list do not match.
select
ctelin.lincod, ctelin.lindes ,
(select
coalesce(sum(mapqtd),0) as mapqtdtot,
coalesce(sum(maptot+mapvlrdes),0) as mapvlrtot
from
bmbmap
inner join ctepro on ctepro.procod = mappro
where
mapfil = :p_fil and
mapdat between :p_datini and :p_datfim and
prolin = ctelin.lincod and
mapqtd > 0 and mapproest is null),
(Select
mappro, prodes,
coalesce(sum(mapqtd),0) as itemqtd, coalesce(sum(maptot+mapvlrdes),0) as itemtotal,
coalesce(sum(maptot / mapqtd),0) as itemuni
from
bmbmap
inner join ctepro on ctepro.procod = mappro
where
mapfil = :p_fil and
mapdat between :p_datini and :p_datfim and
prolin = ctelin.lincod and
mapqtd > 0 and mapproest is null
group by
mappro, prodes)
from
ctelin
group by
ctelin.lincod, ctelin.lindes
order by
ctelin.lincod
obrigado desde ja pela ajuda.
Olhei uns exemplos de select dentro de um select estou tentando fazer um aqui e me retorna o seguinte erro:
Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Invalid command.
count of column list and variable list do not match.
select
ctelin.lincod, ctelin.lindes ,
(select
coalesce(sum(mapqtd),0) as mapqtdtot,
coalesce(sum(maptot+mapvlrdes),0) as mapvlrtot
from
bmbmap
inner join ctepro on ctepro.procod = mappro
where
mapfil = :p_fil and
mapdat between :p_datini and :p_datfim and
prolin = ctelin.lincod and
mapqtd > 0 and mapproest is null),
(Select
mappro, prodes,
coalesce(sum(mapqtd),0) as itemqtd, coalesce(sum(maptot+mapvlrdes),0) as itemtotal,
coalesce(sum(maptot / mapqtd),0) as itemuni
from
bmbmap
inner join ctepro on ctepro.procod = mappro
where
mapfil = :p_fil and
mapdat between :p_datini and :p_datfim and
prolin = ctelin.lincod and
mapqtd > 0 and mapproest is null
group by
mappro, prodes)
from
ctelin
group by
ctelin.lincod, ctelin.lindes
order by
ctelin.lincod
obrigado desde ja pela ajuda.
Tiago Schneider
Curtidas 0
Respostas
Jones Granatyr
18/08/2016
O SQL interno deve retornar somente um campo. Na suas consultas com SQL dentro do SQL elas estão retornando várias colunas
GOSTEI 0
Tiago Schneider
18/08/2016
Obrigado jones , vou testar
GOSTEI 0