我已經瀏覽了本網站上的一些其他帖子,並沒有看到什麼即時通訊尋找所以在這裏。MySQL左數第二表
可以說我有2個表
juser
-----------------------------
userID firstName lastName
-----------------------------
1 billy bob
2 jezze belle
3 bobbie sue
和:
juserrel
---------------------------------------------
id userID relUserID state
---------------------------------------------
1 1 2 approved
2 2 1 retired
3 2 1 approved
4 3 2 approved
我所試圖做的就是一個結果集,顯示了有關與juser表中的每個用戶的每個用戶信息和將一個名爲連接的列添加到結果集中,該列顯示特定用戶與另一個用戶有多少「活動」連接。
上面的結果,我基於表想到的是
resultSet
-----------------------------------------------
userID firstName lastName connections
-----------------------------------------------
1 billy bob 2
2 jezze belle 3
3 bobbie sue 1
我嘗試的查詢如下
select userID, firstName, lastName , coalesce(x.cnt,0) as connections
from juser
left outer join (select count(*) cnt from juserrel where juserrel.userID =
userID or juserrel.relatedUserID = userID and juserrel.state = 'approved')
x on userID = userID
的結果集,我得到這個樣子的:
resultSet
-----------------------------------------------
userID firstName lastName connections
-----------------------------------------------
1 billy bob 4
2 jezze belle 4
3 bobbie sue 4
幫忙請;)
是我編輯的..遺憾的混亂 – Deslyxia