[英]SQL: Selecting distinct values for another column
我正在嘗試確定可以將一列中的多少個唯一值按另一列中的值進行分組。
我的工作表中有很多列,但我感興趣的列是:“部門”和“用戶”
對於這兩列的數據如何,有相同部門的重復用戶。
例如。
Department User
Insights Mike
Insights Mike
Insights Chris
Market Julie
Research Will
Research Sabrina
Research Bryan
我想要的是以下內容:
Department DistinctUsers
Insights 2
Market 1
Research 3
我的基本SQL知識告訴我這是代碼的結構:
SELECT department, COUNT(DISTINCT user)
FROM Sheet1
GROUP BY department, user
我已經看到人們會在FROM
子句中實現(SELECT DISTINCT User from Sheet1)
中的(SELECT DISTINCT User from Sheet1)
,但是我未能將其集成到代碼中。
任何建議或提示,不勝感激!
謝謝!
如評論中所述,您只需要將用戶從組中刪除。
SELECT
department,
COUNT(DISTINCT [user]) as CT
FROM Sheet1
GROUP BY department
訪問
SELECT
department,
count([user])
FROM
(SELECT DISTINCT department, [user] from Sheet1) as x
GROUP BY
department
您的代碼即可完成工作,但無需按用戶分組
BEGIN TRAN
CREATE TABLE #TMP (Department NVARCHAR(50),Name NVARCHAR(50))
INSERT INTO #TMP
SELECT 'Insights', 'Mike' UNION ALL
SELECT 'Insights','Mike' UNION ALL
SELECT 'Insights','Chris'UNION ALL
SELECT 'Market' ,'Julie' UNION ALL
SELECT 'Research', 'Will'UNION ALL
SELECT 'Research', 'Sabrina'UNION ALL
SELECT 'Research','Bryan'
SELECT * FROM #TMP
SELECT department, COUNT(DISTINCT NAME)
FROM #TMP
GROUP BY department
ROLLBACK TRAN
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.