SQL Server-通过打印*列来区分数量

时间:2018-12-30 20:48:55

标签: sql sql-server tsql

我正在尝试打印所有列“ *”,最后应将 COUNT 显示为 DISTINCT GROUP BY SalesPersonID

我已经对子查询和主查询做了很多测试,但是没有用

SELECT S.SalesPersonID, COUNT(*) 
FROM [AdventureWorks2014].[Sales].Store AS S
GROUP BY S.SalesPersonID

此查询为我提供了准确的计数,但我打算打印更多的列,并且一旦我输入另一列,该查询将无法正常工作,我认为这是GROUP BY SELECT语句。

请问如何做?

1 个答案:

答案 0 :(得分:2)

MySQL 8.0 / SQL Server支持窗口COUNT(*)

SELECT *,COUNT(*) OVER(PARTITION BY S.SalesPersonID) AS cnt
FROM AdventureWorks2014.Sales.Store AS S