Re:

From: "Thomas T(dot) Veldhouse" <veldy(at)veldy(dot)net>
To: "tamsin" <tg_mail(at)bryncadfan(dot)co(dot)uk>, "PostgreSQL-general" <pgsql-general(at)postgreSQL(dot)org>
Subject: Re:
Date: 2001-06-29 16:31:22
Message-ID: 009d01c100b8$ef4b8190$3028680a@tgt.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-sql

Heck, you could refine it this way as well.

select pm.*
from purchasemaster pm
inner join itemmaster im
on (pm.transactionid = im.transactionid and im.itempriority = 2)

This might reduce memory usage. I am not sure which will turn out to perform better in a resource friendly environment.

Tom Veldhouse
veldy(at)veldy(dot)net

PS There is a lot of HTML email on this list. Is this generally considered good? Or should I convert my replies to text?

----- Original Message -----
From: Thomas T. Veldhouse
To: tamsin ; PostgreSQL-general
Sent: Friday, June 29, 2001 10:58 AM
Subject: Re: [GENERAL]

select pm.*
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
veldy(at)veldy(dot)net

----- Original Message -----
From: tamsin
To: pgsql-general(at)postgresql(dot)org
Sent: Friday, June 29, 2001 7:40 AM
Subject: 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(at)postgresql(dot)org [mailto:pgsql-general-owner(at)postgresql(dot)org]On Behalf Of Kapil Tilwani
Sent: 28 May 2001 12:27
To: pgsql-general(at)postgresql(dot)org; pgsql-sql(at)postgresql(dot)org
Subject: [GENERAL]

Hi,

I have two tables purchasemaster (Master) and ItemMaster (child) linked through TransactionID

I have a query like
select * 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 Postgres

Only 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

In response to

  • Re: at 2001-06-29 15:58:11 from Thomas T. Veldhouse

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jan Wieck 2001-06-29 17:15:40 Re: another stupid question: Database is being accessed by other users
Previous Message Peter Eisentraut 2001-06-29 16:14:49 Re: Re: Debian's PostgreSQL packages

Browse pgsql-sql by date

  From Date Subject
Next Message Thomas T. Veldhouse 2001-06-29 17:27:40 Re:
Previous Message Thomas T. Veldhouse 2001-06-29 15:58:11 Re: