有一个表格,其中包含员工编号(列)和月份付款(列),其中paramcode(列)为基本,vda等..以及与每个参数码对应的金额(列)。
empno. month paramcode amount
1 jan basic 788
1 feb vda 232
1 march pf 12
现在这是实际问题
写一个查询以显示员工已付款PF的员工付款的BASIC + VDA + HRA总和
(不要使用子查询,联接和设置运算符)
我的回答是
SELECT EmployeeNumber,paramcode, SUM(ActualAmount) AS S FROM pay
WHERE ParamCode IN ('BASIC','VDA','HRA','pf')
GROUP BY GROUPING SETS((EmployeeNumber,ParamCode))
ORDER BY EmployeeNumber
但我希望用param代码消除员工编号为' pf'
答案 0 :(得分:0)
如果我理解你正确使用除了像这样的标签之外的SQL,除了('pf')中的ParamCode
答案 1 :(得分:0)
您实际上是在ParamCode中添加'PF',这是正确的查询:
SELECT EmployeeNumber,paramcode, SUM(ActualAmount) AS S FROM pay
WHERE ParamCode IN ('BASIC','VDA','HRA')
GROUP BY GROUPING SETS((EmployeeNumber,ParamCode))
ORDER BY EmployeeNumber