[firebase-br] Fwd: Select com NOT IN
Cleber
cleber em agrosoftrs.com.br
Seg Jul 20 11:40:28 -03 2009
ao usar o not exists no select não pode ter registros nulos, então faz
assim:
select cidades.id_cidade, cidades.cidade from cidades where not exists
(select * from entregas where id_cidade_origem = :cidade and
id_cidade_origem is not null)
----- Original Message -----
From: "Magnun Oliveira" <magnunoliveira em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Monday, July 20, 2009 11:22 AM
Subject: [firebase-br] Fwd: Select com NOT IN
---------- Forwarded message ----------
From: Magnun Oliveira <magnunoliveira em gmail.com>
Date: 2009/7/19
Subject: Fwd: Select com NOT IN
To: lista em firebase.com.br
Boa tarde .
Tenho uma tabela de cidades e uma de entregas, e nela existe um campo
id_cidade_origem e id_cidade ( para o destino ), ambos foreign key de
CIDADES.
Gostaria de selecionar todas as cidades da tabela CIDADES que nao receberam
nenhuma entrega, de uma cidade de origem especificada por mim.
Segue o sql:
select cidades.id_cidade, cidades.cidade from cidades where
cidades.id_cidade not in (select * from entregas where id_cidade_origem =
:cidade)
A consulta é efetuada com sucesso, porem demora bastante devido a quantidade
de registros.
Gostaria de ajuda pra otimizar esta consulta.
ps: fiz o seguinte sql:
select cidades.id_cidade, cidades.cidade from cidades where not exists
(select * from entregas where id_cidade_origem = :cidade)
Nao retorna nenhum registro, mesmo ocorrendo mais de 100 cidades que nao
receberam entregas da cidade especificada no ":cidade".
se tirar o not, retornam todas as cidades da tabela CIDADES.
agradeço desde jah.
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista