Location_table:
Locid Locname
--------------
8 Blooimng dale
LocVtypeAssign_tbl:
locid vtid
----------- -----------
8 7
8 8
Transaction_tbl:
transactID Locid vtid dtime Paydate
--------- ----- ---- ----------------------- ----------------------
7497 8 7 2013-06-28 14:39:34.000 2013-06-28 18:28:20.000
7500 8 8 2013-06-28 14:41:57.000 NULL
Locid 8 を渡すと、vtid 7 と vtid 8 の日付の差の合計を取得する方法がわかりました。次の式を使用して日付の差を見つけています。
sum(DATEDIFF(hour,t.Paydate,t.DelDate))
期待される出力:
location datediff of 7 datediff of 8
Blooming Dale 2206:30321:73242 235:3373:56915
この出力を取得するためのストアド プロシージャを作成する方法はありますか?
私は次のようなクエリを試しました:
SELECT convert(varchar(10),sum(DATEDIFF(hour,t.Paydate,t.DelDate)))+':'
+convert(varchar(10),sum(DATEDIFF(minute,t.Paydate,t.DelDate)% 60)) + ':'
+convert(varchar(10),sum(DATEDIFF(SECOND,t.Paydate,t.DelDate)% 60))
AS ' HH:MM:SS'
FROM Transaction_tbl t
WHERE t.Locid=8 group by vtid
次のような出力が得られます。
HH:MM:SS
----------------
2206:30321:73242
235:3373:56915