Fórum Select Trava no Firebird 2.0 #378100

21/05/2010

0

Boa tarde Pessoal
estou com um grande problema no firebird 2.0, sendo que não ocorre no 1.5 ou 1.03.
tenho um select que me recupera o primeiro codigo disponivel de uma tabela:

Select Min(CODIGO) From  CLIENTE Where CODIGO> 0 AND (CODIGO+ 1) Not In (Select CODIGO From CLIENTE)

Na minha tabela de CLIENTES qdo tenho acima de 3000 registros o firebird trava e nao consegue processar.

alguem tem alguma dica?


abraços e obrigado


douglas
Douglas Specht

Douglas Specht

Responder

Posts

16/06/2010

Tadeu Oliveira

Boa tarde.

Para que eu possa tentar te ajudar queria entender por que você seleciona o menor codigo e ele tem que ser > 0 e ainda o próximo + 1 não existir na própria tabela que vc está selecionando.

Se vc tiver cliente com código = 0 lógicamente o menor código vai ser sempre 0. em fim gostaría de entender melhor o que você deseja fazer.

Obrigado.
Responder

Gostei + 0

17/06/2010

João Sobrinho

Colega, vê se ajuda:   SELECT MIN(CODIGO) + 1 FROM CLIENTE
WHERE NOT EXISTS(SELECT CODIGO FROM CLIENTE A WHERE A.CODIGO = (CLIENTE.CODIGO + 1))
Responder

Gostei + 0

17/06/2010

Emerson Nascimento

select first 1 (CODIGO+1)
from CLIENTE
where (CODIGO+1) Not In (Select CODIGO From CLIENTE)
order by 1


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar