Re: RES: Improving SQL performance

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, Carlos,

Wouldn't it be better if you used INT in 'codcep' in both tables (as CEP/ZIP numbers are [0-9]{8})? Casting as Tom Lane suggested is also a good alternative, yet I think it'd be much better if you used int in both columns.

Regards,
Cesar

Let's see the query:

SELECT ENDE.* , DEND.DESEND, DEND.USOEND, DEND.DUPEND,
              to_char('F') as NOVO,
              LOG.TIPLOG
FROM TT_END ENDE LEFT OUTER JOIN TD_END DEND ON DEND.CODTAB = ENDE.TIPEND LEFT OUTER JOIN TT_LOG LOG ON LOG.CODCEP = ENDE.CODCEP||CODLOG
        WHERE ENDE.FILCLI = '001'
          AND ENDE.CODCLI = ' 19475';




Carlos H. Reimer wrote:
Yes, I do have an index on tt_log.codcep.

Indexes I´ve on both tables:

tt_end
Indexes:
    "pk_end" PRIMARY KEY, btree (filcli, codcli, codfil, numend)
    "ak_end_numdoc" UNIQUE, btree (numdoc)
    "i_fk_end_darc" btree (codarc, tiparc)
    "i_fk_end_dend" btree (tipend)
    "i_fk_end_dfil" btree (codfil)
    "i_fk_end_dreg" btree (regiao)
    "i_fk_end_mun" btree (codcid)
tt_log
Indexes:
    "i_fk_log_bai" btree (codbai)
    "i_lc_log_codcep" btree (codcep)

Any clue?

Thanks!

Reimer


-----Mensagem original-----
De: Tom Lane [mailto:tgl@xxxxxxxxxxxxx]
Enviada em: quinta-feira, 11 de janeiro de 2007 16:31
Para: carlos.reimer@xxxxxxxxxxxxx
Cc: pgsql-performance@xxxxxxxxxxxxxx
Assunto: Re: [PERFORM] Improving SQL performance


"Carlos H. Reimer" <carlos.reimer@xxxxxxxxxxxxx> writes:
I know that the problem with the following SQL is the "LOG.CODCEP =
ENDE.CODCEP||CODLOG" condition, but what can I
do to improve the performance?
Seems the problem is not using an index for tt_log.  Do you have an
index on tt_log.codcep?  If so, maybe you need to cast the result of
the concatenation to char(8) to get it to use the index.

			regards, tom lane




---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend




[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux