From: | Jérome Knöbl <jknobl(at)mandanet(dot)ch> |
---|---|
To: | pgsql-sql(at)hub(dot)org |
Subject: | Prolem wiht long query? |
Date: | 1999-07-14 14:31:09 |
Message-ID: | 378C9F2D.495FB4A0@mandanet.ch |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi,
I have some trouble with a very long query.
This Query run well :
----------------
select *
from
adresses, liaison_adresse_rubrique as lar0,
liaison_adresse_rubrique as lar1,
liaison_adresse_rubrique as lar2
where
lar0.refadresse=adresses.ref
and lar0.refrubrique=73
and lar1.refadresse=adresses.ref
and lar1.refrubrique=151
and lar2.refadresse=adresses.ref
and lar2.refrubrique=170
This Query take a lot of time :
-----------------------
select *
from
adresses, liaison_adresse_rubrique as lar0,
liaison_adresse_rubrique as lar1,
liaison_adresse_rubrique as lar2,
liaison_adresse_rubrique as lar3,
liaison_adresse_rubrique as lar4
where
lar0.refadresse=adresses.ref
and lar0.refrubrique=73
and lar1.refadresse=adresses.ref
and lar1.refrubrique=150
and lar2.refadresse=adresses.ref
and lar2.refrubrique=160
and lar3.refadresse=adresses.ref
and lar3.refrubrique=151
and lar4.refadresse=adresses.ref
and lar4.refrubrique=170
This Query never finish, and take all my memory (and I have 384Mb)
---------------------------------------------------
select *
from
adresses, liaison_adresse_rubrique as lar0,
liaison_adresse_rubrique as lar1,
liaison_adresse_rubrique as lar2,
liaison_adresse_rubrique as lar3,
liaison_adresse_rubrique as lar4,
liaison_adresse_rubrique as lar5,
liaison_adresse_rubrique as lar6
where
lar0.refadresse=adresses.ref
and lar0.refrubrique=73
and lar1.refadresse=adresses.ref
and lar1.refrubrique=148
and lar2.refadresse=adresses.ref
and lar2.refrubrique=153
and lar3.refadresse=adresses.ref
and lar3.refrubrique=150
and lar4.refadresse=adresses.ref
and lar4.refrubrique=160
and lar5.refadresse=adresses.ref
and lar5.refrubrique=151
and lar6.refadresse=adresses.ref
and lar6.refrubrique=170
Every think is index using hash table.
Is it a limitation of pg?
Do you know another method to do that?
Is it exist an intersect operator in pg (like in oracle)?
Jérome knobl, Lausanne, Switzerland
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 1999-07-14 14:41:51 | Re: [SQL] Few questions about my slow query |
Previous Message | Tom Lane | 1999-07-14 14:00:02 | Re: [SQL] WHERE clause? |