Limitar o Resultado para 100.
Ola Boa tarde, estou com um problema, preciso limitar o resultado para 100 em cada select, mas não estou conseguindo pensar em como fazer.
usei o union para separar por mes, ficando assim 100 resultados para cada mes, no caso deveria ficar.
Alguem poderia me ajusar.
Obrigado.
Segue o codigo.
select extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,(cp.valorfinal/cp.pcocusto) confmkup,CP.MKUP from corpo CP
LEFT JOIN NFISCAL NF ON (NF.CODEMPRESA = CP.codempresa) AND (NF.PEDIDO = CP.PEDIDO)
where CP.movdat between 01.05.2008 and 31.05.2008
AND NF.SERIE <> P2
and CP.CODEMPRESA = B
and CP.tipo = SV
AND NUMFAB NOT LIKE JCE%
union
select extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,(cp.valorfinal/cp.pcocusto) confmkup,CP.MKUP from corpo CP
LEFT JOIN NFISCAL NF ON (NF.CODEMPRESA = CP.codempresa) AND (NF.PEDIDO = CP.PEDIDO)
where CP.movdat between 01.06.2008 and 30.06.2008
AND NF.SERIE <> P2
and CP.CODEMPRESA = B
and CP.tipo = SV
AND NUMFAB NOT LIKE JCE%
union
select extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,(cp.valorfinal/cp.pcocusto) confmkup,CP.MKUP from corpo CP
LEFT JOIN NFISCAL NF ON (NF.CODEMPRESA = CP.codempresa) AND (NF.PEDIDO = CP.PEDIDO)
where CP.movdat between 01.07.2008 and 31.07.2008
AND NF.SERIE <> P2
and CP.CODEMPRESA = B
and CP.tipo = SV
AND NUMFAB NOT LIKE JCE%
group by extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,CP.MKUP
order by 1,10
usei o union para separar por mes, ficando assim 100 resultados para cada mes, no caso deveria ficar.
Alguem poderia me ajusar.
Obrigado.
Segue o codigo.
select extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,(cp.valorfinal/cp.pcocusto) confmkup,CP.MKUP from corpo CP
LEFT JOIN NFISCAL NF ON (NF.CODEMPRESA = CP.codempresa) AND (NF.PEDIDO = CP.PEDIDO)
where CP.movdat between 01.05.2008 and 31.05.2008
AND NF.SERIE <> P2
and CP.CODEMPRESA = B
and CP.tipo = SV
AND NUMFAB NOT LIKE JCE%
union
select extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,(cp.valorfinal/cp.pcocusto) confmkup,CP.MKUP from corpo CP
LEFT JOIN NFISCAL NF ON (NF.CODEMPRESA = CP.codempresa) AND (NF.PEDIDO = CP.PEDIDO)
where CP.movdat between 01.06.2008 and 30.06.2008
AND NF.SERIE <> P2
and CP.CODEMPRESA = B
and CP.tipo = SV
AND NUMFAB NOT LIKE JCE%
union
select extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,(cp.valorfinal/cp.pcocusto) confmkup,CP.MKUP from corpo CP
LEFT JOIN NFISCAL NF ON (NF.CODEMPRESA = CP.codempresa) AND (NF.PEDIDO = CP.PEDIDO)
where CP.movdat between 01.07.2008 and 31.07.2008
AND NF.SERIE <> P2
and CP.CODEMPRESA = B
and CP.tipo = SV
AND NUMFAB NOT LIKE JCE%
group by extract(month from cp.movdat),CP.MOVDAT,CP.CODEMPRESA,CP.PEDIDO,NF.NRNOTA,CP.CODEST,CP.NUMFAB,CP.PCOCUSTO,CP.VALORFINAL,CP.MKUP
order by 1,10
Alex Lekao
Curtidas 0
Respostas
Deivison Melo
08/03/2012
Boa tarde,
Imagino que o que deseja será encontrado nesse link:
http://www.ramosdainformatica.com.br/art_recentes01.php?CDA=693
Imagino que o que deseja será encontrado nesse link:
http://www.ramosdainformatica.com.br/art_recentes01.php?CDA=693
GOSTEI 0
Deivison Melo
08/03/2012
Dependendo da sua versão també há possibilidade de utilização da função Rows
http://www.millenniuminfo.provisorio.ws/cms/index.php?option=com_content&view=article&id=112:firebird-novidades-da-versao-2x&catid=105:artigos&Itemid=162
http://www.millenniuminfo.provisorio.ws/cms/index.php?option=com_content&view=article&id=112:firebird-novidades-da-versao-2x&catid=105:artigos&Itemid=162
GOSTEI 0
Alex Lekao
08/03/2012
Oi Deivison, boa tarde!!
obrigado pela colaboracao.
Entao eu usei essa função first, mas ela limitou errado, ao fazer a conferencia eu percebi que alguns itens não apareceram e que deveria aparecer.
Se bem que não sei se me expressei bem.
obrigado pela colaboracao.
Entao eu usei essa função first, mas ela limitou errado, ao fazer a conferencia eu percebi que alguns itens não apareceram e que deveria aparecer.
Se bem que não sei se me expressei bem.
GOSTEI 0
Bruno Leandro
08/03/2012
uma solução poderia ser criar um procedure que retorne esse select e um parametro da procedure serial o numero de registro deste select
ex
select a,b,c from proc1(100)
union
select a,b,c from proc2(100)
union
select a,b,c from proc3(100)
sendo 100 o numero de registros
ex
select a,b,c from proc1(100)
union
select a,b,c from proc2(100)
union
select a,b,c from proc3(100)
sendo 100 o numero de registros
GOSTEI 0
Alex Lekao
08/03/2012
Blz Galera.
Obrigado pela ajuda.
Ja terminei o que precisava.
Muito obrigado pela forca.
abraco!!!
Obrigado pela ajuda.
Ja terminei o que precisava.
Muito obrigado pela forca.
abraco!!!
GOSTEI 0