[firebase-br] Usar indice na pesquisa

W O sistemas2000profesional em gmail.com
Qui Set 15 18:35:58 -03 2011


Cuando tú escribes la cláusula ORDER BY le obligas al Firebird a usar un
índice si alguno existe.

En tu ejemplo, ese índice sí existe y coincide con el de la Primary Key.

Saludos.

Walter.



2011/9/15 Hélio Oliveira <hpensador em gmail.com>

> Bom dia Colegas!
>
> Eis uma curiosidade...
>
> Tenho uma tabela em que a PK é composta pelos seguintes campos (mat, mes,
> ano, sequencia).
>
> Quando faço:
>
> select *
> from tabela
> where (matricula = :matricula or :matricula = 0)
>  and mes = :mes
>  and ano = :ano
>  and sequencia = :sequencia
>
> Da forma acima o PLAN é natural, ou seja, não utiliza os indices da PK,
> porém, se acrescento um order by
>
> select *
> from tabela
> where (matricula = :matricula or :matricula = 0)
>  and mes = :mes
>  and ano = :ano
>  and sequencia = :sequencia
> order by matricula, mes, ano, sequencia
>
> O PLAN é feito pelo indice da referida PK.
>
> O que justifica isto ?
>
> --
> []'s,
>
> Hélio Oliveira
> Bel. Ciência da Computação
> Técnico em Contabilidade
> e-mail : hpensador em gmail.com
> Skype : hpensador
> http://hpensador.blogspot.com/
> www.hpensador.net
> (71) 9975-9176
>
>
> ______________________________**________________
> 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<http://www.firebase.com.br/fb/artigo.php?id=1107>
> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<http://firebase.com.br/pesquisa>
>



Mais detalhes sobre a lista de discussão lista