2015-06-01 57 views

回答

2

如果你只希望球隊名稱(而不是重複的球員的名字),再一個方法是使用SELECT DISTINCT with a GROUP BY

SELECT DISTINCT Team 
FROM TeamPlayer 
GROUP BY Team, Player 
HAVING COUNT(*) > 1; 

我提到,因爲聚合查詢中的SELECT DISTINCT幾乎總是一個錯誤,但這是一個有效的用法。

這就是說,我可能會更傾向於做:

SELECT Team 
FROM TeamPlayer 
GROUP BY Team 
HAVING COUNT(*) > COUNT(DISTINCT Player); 
+0

後者查詢似乎已經做到了。謝謝! – NSouth

0

使用GROUP BY + HAVING

SELECT Team, Player 
FROM dbo.TeamPlayer 
GROUP BY Team, Player 
HAVING COUNT(*) > 1 

DEMO

相關問題