I added GROUP BY xxx.... to the sql and that seemed to display the
results correctly.
Im going to add it to the code and and see how it works...
Lonnie VanZandt wrote:
Add a select DISTINCT clause, perhaps.
-----Original Message-----
From: pgsql-php-owner@xxxxxxxxxxxxxx
[mailto:pgsql-php-owner@xxxxxxxxxxxxxx] On Behalf Of Gerard Samuel
Sent: Saturday, February 01, 2003 1:38 PM
To: pgsql-php@xxxxxxxxxxxxxx
Subject: [PHP] Left Join SQL Help
Im trying to write a "Left Join" sql statement.
There are 4 tables in a similar structure to ->
[user table]
user_id - username
[user2 table]
uid - user_regdate
[post table]
post_id - poster_id
[posts_text table]
post_id - post_text
[whosonline table]
uid - session_id
This is the sql that Im using ->
SELECT u.user_id, u2.user_regdate, p.post_id, w.uid FROM posts p LEFT
JOIN posts_text pt ON p.post_id = pt.post_id LEFT JOIN users u ON
p.poster_id = u.user_id LEFT JOIN users2 u2 ON p.poster_id = u2.uid LEFT
JOIN whosonline w ON p.poster_id = w.uid WHERE topic_id =
'AFAdDFoAPjvgJNzj' ORDER BY post_time LIMIT 10 OFFSET 0;
If the whosonline table has more than one entry for "anonymous user" id
-1, the sql reports 5 rows.
The 2 last rows should just be one row.
user_id | user_regdate | post_id | uid
------------------+--------------+------------------+-----
1 | 1009861200 | a |
1 | 1009861200 | b |
1 | 1009861200 | c |
-1 | 0 | d | -1
-1 | 0 | d | -1
(5 rows)
Any help in this matter would be appreciated. Thanks.
--
Gerard Samuel
http://www.trini0.org:81/
http://dev.trini0.org:81/