[firebase-br] Otimizar Select
Cyber Guido
cyberguido em gmail.com
Qua Mar 16 13:27:58 -03 2011
Olá Marcelo,
Creio que
select USURIAO_ID
from TB_USUARIO U
where (NOT EXISTS(select USUARIO_ID from TB_TAREFAS T WHERE(T.USUARIO_ID = U.USUARIO)))
execute mais rapidamente.
Meio na correria agora para testar se funciona ou se a redação está
correta, a ideia é apontar que o uso de EXISTS é uma alternativa, e pode
ser mais eficiente.
Até,
Carlos
On 16/03/2011 12:45, Marcelo Moreira wrote:
> Pessoal,
>
> Trabalhando com o Firebird 2.1.3 em modo Classic imaginemos a seguinte
> situacao
>
> TB_TAREFAS (contendo mais ou menos umas 100 mil linhas)
> TB_USUARIO (contendo mais ou menos umas 40 linhas)
>
> O que eu preciso é pegar todos os USUARIO_ID cadastrados na tabela
> TB_USUARIO eliminando apenas os USUARIO_ID que estiverem na tabela
> TB_TAREFAS
>
> select USURIAO_ID
> from TB_USUARIO
> where USUARIO_ID not in (select USUARIO_ID from TB_TAREFAS)
>
> É isso mesmo ou tem algo que eu possa fazer para melhorar o SELECT?
>
> Obrigado!
>
Mais detalhes sobre a lista de discussão lista