我是在SQL Server中编写查询的新手。我正在努力解决如何创建由几个不同的分区分解的订单项报告。例如,我的STARTING数据示例如下:
pdheeid pdhcoid pdhpaygroup Union Code pdhdedcode pdheecuramt pdhpaydate
AJ5PTN0000K0 BWC0O 8F Union(Y/N) U5018 3.15 2018-01-05 00:00:00.000
AJ5PTN0000K0 BWC0O 8F Union(Y/N) U5018 3.15 2018-01-19 00:00:00.000
AJ5PTN0000K0 BWC0O 8F Union(Y/N) U5018 3.15 2018-02-02 00:00:00.000
AJ5PTN0000K0 BWC0O 8F Union(Y/N) U5018 3.15 2018-02-16 00:00:00.000
AJ5PTN0000K0 BWC0O 8F Union(Y/N) U5018 3.15 2018-03-02 00:00:00.000
AJ5Q1U0000K0 BWC0O 8G Union(Y/N) U5018 3.01 2018-01-05 00:00:00.000
AJ5Q1U0000K0 BWC0O 8G Union(Y/N) U5018 3.01 2018-01-19 00:00:00.000
AJ5Q1U0000K0 BWC0O 8G Union(Y/N) U5018 3.01 2018-02-02 00:00:00.000
AJ5Q1U0000K0 BWC0O 8G Union(Y/N) U5018 3.01 2018-02-16 00:00:00.000
AJ5Q1U0000K0 BWC0O 8G Union(Y/N) U5018 3.01 2018-03-02 00:00:00.000
从那里开始,我希望进行几乎各种各样的调整,以获得如下的细节输出:
PayDate Pay Group Union Code Total Transactions Unique Employees Deduction Code Sum(dollars for group) Avg(across employees in the group)
然后能够按年推出,这更像是:
YEAR(PayDate) Pay Group Union Code Total Transactions Unique Employees Deduction Code Sum(dollars for group) Avg(across employees in the group)
对于noob问题,我很抱歉,我是SQL世界的新手,仍在努力加快速度。
答案 0 :(得分:0)
我正在使用您在详细输出中提供的列“名称”。很抱歉没有完全回答你的问题。这不会在分组中提供独特的员工,但我希望这是一个起点。
select
PayDate ,
Pay Group ,
Union Code ,
count(transactions) as Total Transactions
count(employees) as non-unique employees **
Deduction Code
Sum(dollars) as dollars for group
Avg(dollars) as across employees in the group
from some_table
group by
PayDate ,
Pay Group ,
Union Code ,
Deduction Code