[英]Query to get distinct count of column with MYSQL
我有一個表名 POEMS,其中列有poemID 和 userID。 我想讓poemID 不同,只顯示userID 列中的計數。 有 3 個 1 的詩歌 ID。我想讓它顯示詩歌 ID 1 和用戶 ID 為 2。詩歌 ID 2 和用戶 ID 3,用於 3 行,詩歌 ID 3 和用戶 ID 1 用於 1 行。
|poemID | userID|
1 1
1 5
2 2
2 5
2 4
3 2
我希望上表看起來像下表。
|poemID | userID |
1 2
2 3
3 1
我正在嘗試的 SQL 查詢如下,但它不起作用。 請幫忙。
SELECT DISTINCT(poemID), COUNT(userID) FROM POEMS GROUP BY poemID;
這看起來像一個直接的聚合查詢:
SELECT poemID, COUNT(*) no_users
FROM POEMS
GROUP BY poemID;
或者,如果同一用戶可能針對給定的詩歌出現多次,而您只想計算一次:
SELECT poemID, COUNT(DISTINCT userID) no_distinct_users
FROM POEMS
GROUP BY poemID;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.