sql server分组结果
这个查询返回它下面的列表,但是ID出现了多次,我可以对ID进行分组并将所有重头戏相加,这样我就可以得到一个列表唯一ID,旁边有重头戏的总数。这在sql中可能吗sql server分组结果,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,这个查询返回它下面的列表,但是ID出现了多次,我可以对ID进行分组并将所有重头戏相加,这样我就可以得到一个列表唯一ID,旁边有重头戏的总数。这在sql中可能吗 SELECT [fkPlayerId],[plays] FROM [dPlaysPerDay] INNER JOIN dWinners ON [dPlaysPerDay].[fkPlayerId]=dWinners.[pkWinnerId] 53693 1 53695 1 53696 1 53693 1 53692
SELECT [fkPlayerId],[plays]
FROM [dPlaysPerDay]
INNER JOIN dWinners
ON [dPlaysPerDay].[fkPlayerId]=dWinners.[pkWinnerId]
53693 1
53695 1
53696 1
53693 1
53692 2
53698 2
53697 1
53699 2
53698 3
53693 6
53699 2
53693 2
53700 2
53698 1
使用
分组依据
时,选择
中的所有数据项都必须包含在分组依据
中,或者放在一个列表中
因此,fkPlayerId
应按分组,并与函数一起使用playerid
要使用聚合函数ORDER BY
,请为数据项提供别名,并按以下方式进行排序:
SELECT [fkPlayerId], SUM([plays]) as TotalPlays
FROM [dPlaysPerDay]
INNER JOIN dWinners ON [dPlaysPerDay].[fkPlayerId]=dWinners.[pkWinnerId]
GROUP BY fkPlayerId
ORDER BY TotalPlays
酷,谢谢你,科特!我可以在第二排点菜吗?我知道你可以按[列名]使用order,但这里我们得到一个没有名字的coulmn?
SELECT [fkPlayerId], SUM([plays]) as TotalPlays
FROM [dPlaysPerDay]
INNER JOIN dWinners ON [dPlaysPerDay].[fkPlayerId]=dWinners.[pkWinnerId]
GROUP BY fkPlayerId
ORDER BY TotalPlays