From: | Steve Tucknott <steve(at)retsol(dot)co(dot)uk> |
---|---|
To: | PostGreSQL <pgsql-novice(at)postgresql(dot)org> |
Subject: | Aliased table names ...oddity? |
Date: | 2005-06-30 06:54:57 |
Message-ID: | 1120114498.2643.26.camel@retsol1 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
PostgreSQL-7.4.5
I don't know whether this is a 'bug' (it seems like designed behaviour)
- but if you do:
SELECT markUp.*
FROM markUp AS mark
JOIN clientBranch AS clntB
ON mark.foreignRecNo = clntB.clientRecNo
AND clntB.recNo = 2
WHERE mark.serviceCoBranchRecNo = 2
AND mark.foreignTableName = 'client'
So the table has an ALIAS that is ignored in the SELECT clause, then the
WHERE clause is 'ignored' and all rows from the table are returned.
Obviously its a typo in the original SQL - (but one that's very
difficult to pick up unless the data returned is obviously outside
limits). Running the SQL in PSQL, it seems that a FROM clause is
automatically appended for the missing 'markUp' table - so it does seem
that this is intentional. Is there a way to have this 'rejected' as an
error - ie selecting from a table not included in the query?
--
Regards,
Steve Tucknott
ReTSol Ltd
DDI 01903 828769
MOBILE 07736715772
___________________________________________________________
Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Glaesemann | 2005-06-30 07:16:44 | Re: Aliased table names ...oddity? |
Previous Message | Michael Glaesemann | 2005-06-30 06:27:15 | Re: [despammed] capring postgresql and mysql |