Beginner question - select with multiple tables
От | Dave Inskeep |
---|---|
Тема | Beginner question - select with multiple tables |
Дата | |
Msg-id | 19990120045127.28717.rocketmail@send103.yahoomail.com обсуждение исходный текст |
Ответы |
Re: [SQL] Beginner question - select with multiple tables
|
Список | pgsql-sql |
Hi, I'm trying to perform a select over several tables I've created. There are five tables - the first contains message header information and a key field (called node). The other four contain message body information and the same node field. I'm getting unexpected results when I query across the multiple tables. The following statement does not work if there are not any records in vall_bod2: select distinct vall.node from vall, vall_bod1, vall_bod2 where ( vall.node = vall_bod1.node and vall_bod1.bod1 LIKE '%brake%' ) or ( vall.node = vall_bod2.node and vall_bod2.bod2 LIKE '%brake%' ); However, if I insert a record into vall_bod2 (whether or not it contains the word brake) and a corresponding header record into vall with a matching node, the same exact query will return the nodes of all records in vall_bod1 with the word 'brake' in the bod1 field. The same holds true if I query across vall_bod1, 2, and 3, and there are no records in vall_bod3. If I insert a single record in vall_bod3, even if it doesn't match, the query will work for matching records in vall_bod1 and vall_bod2. Ditto when I try across 1-4. Can someone explain why this happens, am I doing something wrong? Is there a better way to achieve the same results, i.e. JOINS? Does Postgresql support JOINS? Many thanks, Dave Inskeep _________________________________________________________ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com
В списке pgsql-sql по дате отправления: