[firebase-br] Query muito Lenta com left join

RAMJ SISTEMAS & CONSULTORIA jubrovolski em yahoo.com.br
Sex Maio 13 11:51:42 -03 2005


Bom dia Pessoal

Estou com a seguinte situação:

Tenho uma tabela com aprox. 2 milhões de registros ( dados apenas para 
teste ). Quando executo a query abaixo usando a "ordem natural", ou seja 
sem "ORDER BY", o retorno dos dados é imediado ( teste no ibexpert ). 
Mas quando eu utilizo order by e.nome, demora mais de 1 minuto para 
retornar. Tirando os Left join, os dados também retornam de imediato com 
o Order by e.nome. O que está errado nesta query? Tentei utilizar o 
PLAN, mas não obtive resultados. Porque o banco demora a retornar os 
dados se eu tenho um indice por NOME?

Reuber

SELECT E.CODCLI
     , E.RAZAO
     , D.NOME
     , E.FANTASIA
     , E.NATUREZA
     , E.CODMUNCOM
     , A.DESCMUN AS DESCMUNCOM
     , G.UF AS UFCOM
     , E.ENDERECOCOM
     , E.BAIRROCOM
     , E.CXPOSTALCOM
     , E.CODMUNCOB
     , B.DESCMUN AS DESCMUNCOB
     , H.UF AS UFCOB
     , E.ENDERECOCOB
     , E.BAIRROCOB
     , E.CXPOSTALCOB
     , E.CADASTRO
     , E.COBRANCA
     , E.NFONE
     , E.CELULAR
     , E.FAX
     , E.EMAIL
     , E.SITE
     , E.CNPJCPF
     , E.IERG
     , E.CEPCOB
     , E.CEPCOM
     , E.CODCNAE
     , C.DESCCNAE
     , E.CODPROP
     , D.CPF AS CPFPROP
     , E.CODBANCO
     , F.DESCBANCO
     , E.EMITENOTA
     , E.NUMCONTRATO
FROM CLIENTES E
left join LOCALIDADES A ON (A.CODMUN=E.CODMUNCOM)
left join LOCALIDADES B ON (B.CODMUN=E.CODMUNCOB)
left join CNAE C ON (C.CODCNAE=E.CODCNAE)
left join PROPRIETARIOS D ON (D.CODPROP=E.CODPROP)
left join BANCOS F ON (F.CODBANCO=E.CODBANCO)
left join UFS G ON (G.DNE=A.DNEUF)
left join UFS H ON (H.DNE=B.DNEUF)
ORDER BY E.NOME






Mais detalhes sobre a lista de discussão lista