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@postgresql.org
>[mailto:pgsql-php-owner@postgresql.org] On Behalf Of Gerard Samuel
>Sent: Saturday, February 01, 2003 1:38 PM
>To: pgsql-php@postgresql.org
>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/