我有3個表,每個表都會顯示用戶發佈消息的記錄。從3個表中總結數值
我已經設法總結了每個用戶在每個表上發佈消息的次數,現在我想將這3個單獨的值彙總到每個用戶。
這是我迄今管理:
表USERMESSAGE:
SELECT U.SenderID, COUNT(U.SenderID) AS U_NUM FROM USERMESSAGE AS U WHERE U.SenderID != U.ReceiverID GROUP BY U.SenderID
表註釋:
SELECT C.UserID, COUNT(C.UserID) AS C_NUM FROM COMMENT AS C GROUP BY C.UserID
表好友列表:
SELECT F.UserID, COUNT(F.UserID) AS F_NUM FROM FRIENDLIST AS F WHERE F.ListName = 'News Feed' GROUP BY F.UserID
但並不是所有的用戶將在所有標籤中發帖所以某些用戶ID不會出現在某些表中。
對不起11 附近有語法錯誤,我是SQL新手,我試圖修改你的代碼,但它對我來說太複雜了。 – 2009-10-06 07:52:43
它的基本功能是在第一個子選擇中。獲取所有不同的用戶標識,這將允許您離開加入。然後剩下的3個子查詢得到每個表的總數。那麼您將不同的userids列表加入到3個表子查詢中,並將它們添加到一起。 – 2009-10-06 08:07:57
好吧,它的工作。謝謝。 – 2009-10-08 04:35:53