limitar o número de linhas em uma consulta SQL

Firebird

30/07/2008

Preciso limitar o número de linhas em uma consulta SQL, porém esse limite deve funcionar quando tenho o ´in´ no ´where´.

Ex.: vendas X vendedores
Preciso retornar as 3 últimas vendas dos vendedores 1 e 2. Se eu utilizar o ´first´ no início do SQL o limite será de 3 registros, independente do número de vendedores passado como parâmetro.

Obs.:. Utilizo firebird 1.5 e não posso criar procedure (acho que o problema está aqui).

Não sei se ficou claro, espero que dê para entender.

Valeu!


Help

Help

Curtidas 0

Respostas

Help

Help

30/07/2008

Alguém?


GOSTEI 0
Joaoshi

Joaoshi

30/07/2008

Colega, você poderia utilizar o [b:dc81122338]Union All[/b:dc81122338]

SELECT FIRST 3 VENDA FROM TABELA WHERE VENDEDOR = 1
UNION ALL
SELECT FIRST 3 VENDA FROM TABELA WHERE VENDEDOR = 2


É meio POG mas pode ser um caminho.


GOSTEI 0
Thomaz_prg

Thomaz_prg

30/07/2008

Qual o problema com as stored procedures??
Ficaria fácil resolver criando uma. Aparece algum erro ao tentar criá-las?


GOSTEI 0
Help

Help

30/07/2008

A idéia o union é boa, eu só teria que criar uma rotina para montar o SQL dependendo do número de vendedores que eu receber como parâmetro.

O problema com a procedure é que ainda não podemos utilizar aqui, opção do DBA... infelizmente...


GOSTEI 0
POSTAR