|
Eu mandei fazer a pesquisa só pela RAZAO mas
ele não usou o índice. Por que isso? Ele deveria usar!
Diminuí a qtd de registros para 1.000
O índice é:
CREATE INDEX "idx_cliente_razao" ON
"public"."cliente" USING btree ("razao");
Quando uso o select:
SELECT id,
nome, fantasia FROM cliente WHERE razao like 'AN%'
Ele me retorna
os registros corretamente, mas não usou o ínidice. Veja o
resultado:
Seq Scan on cliente (cost=0.00..3.75
rows=1 width=136) (actual time=0.047..0.106 rows=3 loops=1) Filter:
((razao)::text ~~ 'AN%'::text)
Alguém sabe o motivo? Ele deveria ter usado o índice!
----- Original Message -----
Sent: Monday, October 02, 2006 3:10
PM
Subject: Re: [PostgreSQL-Brasil] Esse SQL
usa índice?
Para esse tanto de resgistros, eu tenho quase certeza de que o
índice não é usado.
[]'s - Walter
On 10/2/06, Deleon
Galvin <
[EMAIL PROTECTED]> wrote:
Olá
amigo
Execute o Explain que ele vai te dizer se estará utilizando ou
não.
EXPLAIN ANALYZE SELECT id, nome, fantasia FROM cliente WHERE
razao like 'AN%' OR fantasia like 'AN%'
Ali ele irá lhe fornecer
os custos da consulta e também se utilizou um indice (index scan) e qual
indice utilizou ou fez um full scan na tabela (Seq Scan)
Espero
ter ajudado. Um abraço!
Em Seg, 2006-10-02 às 14:37 -0300,
Nelson Pereira Júnior escreveu: > Olá amigos, > > Tenho
uma relação com nome CLIENTE. Nela existe um campo RAZAO e um campo >
FANTASIA. Criei 3 índices, um para o campo razão: idx_cliente_razao,
outro > para o fantasia: idx_cliente_fantasia, e outro com os
dois: > idx_cliente_razao_fantasia > > Imagine que tenho 1
milhão de registros. > > Quero procurar os cliente que comecem
com "AN", tanto na razão social quanto > no nome fantasia em uma única
pesqusia. > > Queria saber se eu executasse essa pesquisa, ela
usaria os dois índices para > procurar, apenas 1, ou
nenhum: > > SQL: > > SELECT id, nome,
fantasia > FROM cliente > WHERE razao like 'AN%' OR fantasia
like 'AN%' > > Queria saber qual dos índices ela usaria.
> > _______________________________________________ >
Grupo de Usuários do PostgreSQL no Brasil > Antes de perguntar
consulte o manual > http://pgdocptbr.sourceforge.net/
> > Para editar suas opções ou sair da lista acesse a
página da lista em: > http://pgfoundry.org/mailman/listinfo/brasil-usuarios
_______________________________________________ Grupo
de Usuários do PostgreSQL no Brasil Antes de perguntar consulte o
manual http://pgdocptbr.sourceforge.net/
Para editar suas opções ou sair da lista acesse a página da lista
em: http://pgfoundry.org/mailman/listinfo/brasil-usuarios
_______________________________________________ Grupo de Usuários do
PostgreSQL no Brasil Antes de perguntar consulte o
manual http://pgdocptbr.sourceforge.net/
Para editar suas opções ou
sair da lista acesse a página da lista
em: http://pgfoundry.org/mailman/listinfo/brasil-usuarios
|