我試圖提取有關每個用戶組的信息,同時計算每個用戶組中的用戶數量。 計數工作,但是如果一個組不包含任何用戶,它不檢索信息 - 它只是被忽略。顯示組中的用戶數量,甚至是空組
這是我的查詢:
SELECT
g.*,
count(u.username) as total,
u.usergroup
FROM
usergroups as g,
users as u
WHERE
u.usergroup = g.g_id
GROUP BY
g.group_name
這是我的「用戶」和「用戶組」表的一部分:
Sample usergroups table structure
+--------------------------+---------------+
| Field | Type |
+--------------------------+---------------+
| g_id | int(10) |<- the user group's ID.
| group_name | varchar(255) |<- the name of the user group
+--------------------------+---------------+
Sample users table structure
+--------------------------+---------------+
| Field | Type |
+--------------------------+---------------+
| id | int(10) |<- the user ID
| username | varchar(255) |<- the username
| usergroup | int(10) |<- ID of the user group the user is in
+--------------------------+---------------+
我不知道我錯過了 - 但隨後再一次,我對更復雜的查詢是非常新的(如果你可以稱之爲)。
任何幫助將不勝感激!
呵呵,沒想到做一個左連接。 會試一試並回報:)。 乾杯。 – MrE 2012-01-03 18:38:46
完美! - 左加入是答案:) - 乾杯! 一旦我可以,將這個標記爲答案。 – MrE 2012-01-03 18:42:57
哦!非常感謝您的詳細解釋。現在變得更有意義了。埃裏克,非常感謝你花時間詳細說明! – MrE 2012-01-03 18:47:23