好的,我做了一个选择声明并且没有像我希望的那样做,我已经尝试按照我的意愿调整它,但它不会工作。我用我写的选择添加了它看起来像的图像。图片底部有三个总计。我想要一个包含TotalSalary,AvreageSalary和所有玩家数量的行。希望这是有道理的。
SELECT DISTINCT teamID as Team, yearid as 'Year',
SUM(salary) AS TotalSalary, AVG(salary) AS AverageSalary,
Count(playerID) as players
FROM Salaries
GROUP BY teamID, salary, yearID, playerID
HAVING teamID = N'SEA'
and yearID = N'2010'
答案 0 :(得分:1)
您可以使用GROUPING SETS
:
SELECT teamID as Team,
yearid as Year,
SUM(salary) AS TotalSalary,
AVG(salary) AS AverageSalary,
COUNT(playerID) AS players
FROM Salaries
GROUP BY GROUPING SETS((teamID, yearid), ())
HAVING teamID = N'SEA' AND
yearID = N'2010'
请注意,原始查询似乎很混乱,因为您将DISTINCT
与GROUP BY
混合在一起。