以下は私のクエリです:
select employid,deprtmnt,jobtitle,[H-RT],[H-OT]
from
(
SELECT employid,deprtmnt,jobtitle,chekdate,UNTSTOPY,Category
FROM
(
SELECT employid,deprtmnt,jobtitle,chekdate,UNTSTOPY,payrolcd as category
FROM [upr30300]
where DEPRTMNT like '600%'
) t
where chekdate = '2012-03-09' and Category in ('H-RT','H-OT')
) d
PIVOT
(
SUM(UNTSTOPY)
FOR Category IN ([H-RT],[H-OT])
)p
結果には、2 つのピボット (H-RT および H-OT) を含む列が表示されます。チェックデートでフィルター処理してフィルターの結果を取得できますが、H-RT、H-OT を示す 2 つの EXTRA 列を取得する方法を見つけようとしています。
dateadd 関数を使用しようとしましたが、H-RT(period1),H-OT(period1),H-RT(period2),H-OT( を含む 1 つの結果セットを取得する方法がわかりません。 period2)...どなたか、これを成し遂げるための方向性やアイデアをお持ちですか?
前もって感謝します!
サンプルデータは次のとおりです。
EMPLOYID DEPRTMNT JOBTITLE H-RT H-OT
ABC123 600-20 CA 77.78000 7.47000
ABC124 600-80 CSA 55.65000 0.58000
ABC125 600-70 RAA 77.68000 0.03000
必要なデータは次のとおりです。
EMPLOYID DEPRTMNT JOBTITLE H-RT1 H-OT1 H-RT2 H-OT2
ABC123 600-20 CA 77.78000 7.47000 80.00 12.00
ABC124 600-80 CSA 55.65000 0.58000 74.00 16.00
ABC125 600-70 RAA 77.68000 0.03000 48.00 2.00
必要なデータ列 H-RT1,H-OT1 は、chekdate = '2012-03-09' であり、列 H-RT2,H-OT2 は、chekdate = '2012-03-09' + 14 日です。