[firebase-br] Duvida Select
Joel
big.rid.listas em gmail.com
Ter Set 9 13:03:12 -03 2014
select
n.numpedido
from numpedidos n
left join pedidos p on (p.numpedido=n.numpedido)
where ((n.usado= '') and (p.numpedido is null))
On 09-09-2014 11:41, Rodrigo wrote:
> Bom dia a todos.
>
> Fiz um select e ele esta funcionando, porém esta muito lento, pois ha
> muitos registros no banco de dados.
>
> select N.NUMPEDIDO AS NUMPEDIDO from numpedidos N where N.USADO = ''
> and (SELECT COUNT(*) FROM PEDIDOS WHERE NUMPEDIDO=N.NUMPEDIDO) = 0
>
> nesse select retorno o proximo numero de pedido, porem esse numero nao
> pode repetir na tabela pedidos, entao
> faço uma pesquisa para verificar se ele ja nao esta sendo usado.
> Percebi que nesses selects não usam os indices criados. Por isso
> talvez fique lento.
>
> Tentei fazer assim:
>
> select N.NUMPEDIDO AS NUMPEDIDO from numpedidos N where N.USADO = ''
> and N.NUMPEDIDO NOT IN (SELECT NUMPEDIDO FROM PEDIDOS)
>
> Funciona mais rapido porem nao retorna os mesmos resultados do que o
> outro select acima.
>
> Existe alguma forma de melhorar esse select, ou uma forma de ele usar
> os indices criados ?
>
> Grato
>
>
> ______________________________________________
> 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