我在 postgres 14 中有下表:
user team
1 A
10 B
113 C
12 A
1 B
113 A
12 C
1 C
113 B
user查詢所有 3 個團隊中不同的計數A, B, C以及所有這些用戶的串列的最佳方法是什么
輸出應該:
count list_user
2 [1, 113]
我正在嘗試對cte's3 個團隊中的每個團隊使用,但查詢一直在運行,并且沒有檢索任何結果然后超時。
uj5u.com熱心網友回復:
我們可以在這里使用雙重聚合方法:
SELECT COUNT(*) AS count,
STRING_AGG(user::text, ',') AS list_user
FROM
(
SELECT user
FROM yourTable
WHERE team IN ('A', 'B', 'C')
GROUP BY user
HAVING COUNT(DISTINCT team) = 3
) t;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/536539.html
標籤:postgresql
上一篇:為clojure傳遞postgresql連接uri時,jdbc發出錯誤
下一篇:SELECT陳述句中的可選列
