[firebase-br] Dúvida sobre indices
Carlos H. Cantu
listas em warmboot.com.br
Seg Maio 4 17:05:18 -03 2020
É assim mesmo... se vc tem um índice composto por duas chaves, a
pesquisa é sempre feita da "esquerda pra direita", portanto, pesquisar
só pelo segundo campo da chave nunca irá usar o índice composto.
No seu caso, compensa criar dois indices, um pra cada campo.
[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
UG> Pessoal, me tira uma dúvida por favor
UG> Tenho a seguinite tabela.
UG> CREATE TABLE TABELA (
UG> CHAVE1 Numeric(10,0) NOT NULL,
UG> CHAVE2 Numeric(10,0) NOT NULL,
UG> CAMPO1 TIMESTAMP,
UG> CAMPO2 Varchar(1),
UG> CAMPO3 Numeric(10,0),
UG> CAMPO4 Numeric(10,0),
UG> CAMPO5 Numeric(10,0),
UG> CONSTRAINT TABELA PRIMARY KEY (CHAVE1,CHAVE2)
UG> );
UG> Nela, criei a PK usando os campos CHAVE1 e CHAVE2.
UG> Se eu executo:
UG> select * from TABELA
UG> where TABELA.CHAVE1 = 30405
UG> Tenho o plano:
UG> PLAN (TABELA INDEX (PK_TABELA))
UG> Porém, se e eu executar o select pela outra chave primária:
UG> select * from TABELA
UG> where TABELA.CHAVE2 = 30405
UG> Tenho o plano:
UG> PLAN (TABELA NATURAL)
UG> Alguém sabe me dizer o porque? se estou usando as duas chaves primárias,
UG> uma em cada select...
UG> Desde já, agradeço a ajuda!
Mais detalhes sobre a lista de discussão lista