0
嗨我想計算滿足特定參數的多行所用的時間。這裏是我的查詢當滿足參數時計算多行的時間
SELECT
EventDate AS 'Date'
,ID
,DeptCode 'DC'
,OpCode 'OC'
,ElapsedTime = convert(time(0),dateadd(second,datediff(second,StartTime,FinishTime),0))
,Units = SUM(Units)
,UPH = cast(isnull(sum(Units)/nullif(sum(datediff(minute,StartTime,FinishTime))*1.0,0),0.0)*60 as decimal(10,0))
FROM dbo.TimeLog WITH (NOLOCK)
WHERE EventDate = '06/15/17' AND DeptCode = 'ST' AND OpCode = 'BT'
GROUP BY
EventDate, ID, DeptCode, OpCode, StartTime, FinishTime
ORDER BY UPH DESC
下面是結果...
Date ID DC OC ElapsedTime Units UPH
6/15/17 2375278 ST BT 00:48:00 3262 4077
6/15/17 2375278 ST BT 03:15:00 4730 1455
6/15/17 2375278 ST BT 00:12:00 NULL 0
6/15/17 2375278 ST BT 00:30:00 NULL 0
6/15/17 2375278 ST BT 00:30:00 NULL 0
6/15/17 2375278 ST BT 00:45:00 NULL 0
6/15/17 2375278 ST BT 03:20:00 NULL 0
6/15/17 2375278 ST BT 00:40:00 NULL 0
我想看看這是我的結果
Date ID DC OC ElapsedTime Units UPH
6/15/17 2375278 ST BT 10:00:00 7992 799
有人可以幫腳本這個好嗎?
只是去嘗試查詢,不能按ElapsedTime和UPH不在表 – DRUIDRUID
是列,但他們是你的SELECT列。使用你現有的SELECT並把我貼在它上面的SELECT。 – IngoB
噢,是的,我收到一條錯誤消息,列'dbo.TimeLog.EventDate'在選擇列表中無效,因爲它不包含在聚合函數或GROUP BY子句中。 – DRUIDRUID