簡體   English   中英

使用 MYSQL 查詢以獲取不同的列計數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM