Wrox Home  
Search P2P Archive for: Go

  Return to Index  

sql_language thread: SQL JOIN Trouble!


Message #1 by "BetaCeti" <BetaCeti@E...> on Sat, 7 Apr 2001 16:58:01
Thanks Francois =)

I got past that now and I'm having a logical problem! :/

I have here 2 queries with their results. If you take a look at the 
results you'll realize what the problem is. I've cut it short just to show 
the incorrect fields.


Result 1:
========
Username  TotalReplies  LastReply
--------  ------------  -------------------
BetaCeti        5       2001-04-04 00:00:00
BetaCeti        5       2001-04-04 00:00:00
BetaCeti        5       2001-04-04 00:00:00
BetaCeti        5       2001-04-04 00:00:00
BetaCeti        5       2001-04-04 00:00:00


Result 2:
========
Username  TotalReplies  LastReply
--------  ------------  -------------------
BetaCeti        1       2001-02-02 00:00:00
NULL            0       NULL
NULL            0       NULL
NULL            0       NULL
NULL            0       NULL


As you can see, the first result gave the correct Username but nothing 
else. The second one gave everything correct BUT the Username.
Here are the queries that produced these results.


Query 1:
=======
SELECT Messages.MessageID, Messages.DateOfPost, Messages.Subject,
Messages.Views, Users.Username, COUNT(Replies.ReplyID) AS TotalReplies,
MAX(Replies.DateOfPost) AS LastReply

FROM Messages

LEFT JOIN (Users INNER JOIN Replies ON Replies.UserID=Users.UserID)
ON Messages.UserID=Users.UserID

WHERE Messages.ForumID = 3

GROUP BY Messages.MessageID, Users.Username, Messages.DateOfPost,
Messages.Subject, Messages.Views


Query 2:
=======
SELECT Messages.MessageID, Messages.DateOfPost, Messages.Subject,
Messages.Views, Users.Username, COUNT(Replies.ReplyID) AS TotalReplies,
MAX(Replies.DateOfPost) AS LastReply

FROM Messages

LEFT JOIN (Replies INNER JOIN Users ON Replies.UserID=Users.UserID)
ON Messages.MessageID=Replies.MessageID

WHERE Messages.ForumID = 3

GROUP BY Messages.MessageID, Users.Username, Messages.DateOfPost,
Messages.Subject, Messages.Views


SQL can get confusing sometimes. Hope you can help!



  Return to Index