Re:
От | Thomas T. Veldhouse |
---|---|
Тема | Re: |
Дата | |
Msg-id | 003501c100b4$4ea2cd10$3028680a@tgt.com обсуждение исходный текст |
Ответ на | RE: ("tamsin" <tg_mail@bryncadfan.co.uk>) |
Список | pgsql-general |
select pm.*
from purchasemaster pm
inner join itemmaster im
on pm.transactionid = im.transactionid
where im.itempriority = 2
from purchasemaster pm
inner join itemmaster im
on pm.transactionid = im.transactionid
where im.itempriority = 2
Try this instead.
Make sure the appropriate indexes (on pm.transactionid, im.transactionid and im.itempriority) exist if the tables are of any appreciable size.
Tom Veldhouse
----- Original Message -----From: tamsinSent: Friday, June 29, 2001 7:40 AMSubject: RE: [GENERAL]i think performance is better in postgres if you rewrite this sort of query as:select * from purchasemaster where exists (select 1 from itemmaster where itempriority = 2 and transactionid = purchasemaster.transactionid)hope this helps,tamsin-----Original Message-----
From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org]On Behalf Of Kapil Tilwani
Sent: 28 May 2001 12:27
To: pgsql-general@postgresql.org; pgsql-sql@postgresql.org
Subject: [GENERAL]Hi,I have two tables purchasemaster (Master) and ItemMaster (child) linked through TransactionIDI have a query likeselect * from purchasemaster where transactionid in (select transactionid from itemmaster where itempriority = 2)****I need this query for MS-Access, MS-SQL and Postgres. Because the application is supposed to be such that for upto 2-3 users, the application would be running on MS-Access or MSDE, while for heavier databases i.e., greater than 4 , the ideal database would be PostgresOnly the problem is ... (correct me if i am wrong, PLEEEEEEEEEEEASE) that for each tuple in purchasemaster the sub-query is re-evaluated (True or False????). What I am looking at is whether it is possible to execute the query in the sub-query just once, get its value as in "(1,2,5,23,7,90)", etc. in place of the sub-query and accordingly, execute the main query.Thank you,Kapil
В списке pgsql-general по дате отправления: