我有2個表,投票人和用戶。我想向所有用戶顯示其用戶信息旁邊的總分配選舉人記錄。mySQL JOIN查詢爲0分配記錄的用戶
此時,此查詢類型的作品 - 它顯示分配了任意數量記錄的用戶的總數,但它不顯示在投票人表中有0個記錄分配的用戶。
選民記錄被分配給字段voter.owner的用戶。這是我目前有:
SELECT u.id
,u.admin
,u.active
,u.name
,u.email
,u.last
,if(count(v.owner) is NULL,'0',count(v.owner)) as assigned
from user u
left join voter v
on u.id = v.owner
where u.cid = '$cid'
order by u.id asc
上如何顯示所有用戶,甚至不擁有者和選民記錄的任何建議嗎?
你應該小心與MySQL保留字作爲表名(如user),或者正確地轉義它們。請參閱http://dev.mysql.com/doc/refman/5.1/en/reserved-words.html –
我們是否可以從兩個表中看到一些示例數據?對我來說,這看起來像一個正確的左連接(保留來自用戶的行,即使在選民中沒有匹配)。你可以試試'GROUP'你的結果 –