1
我想將兩個查詢組合在一起,但由於它是datetime列,所以我遇到了麻煩。現在我有一個查詢,查找所有用戶+那裏最慢和最快的「段」時間,但我也需要找到下面的平均段時間是我現在使用的兩個查詢哪個工作,但我需要它在一個查詢我正在製作的報告。如何在使用datetime時將查詢與AVG查詢組合SQL 2008 R2
感謝
托馬斯·詹姆斯
DECLARE
@vnuID int = 1212,
@StartDate DateTime = '30/10/2013',
@EndDate DateTime = '26/11/2013'
SELECT DISTINCT usrFullName, MIN(CAST(tblTrace.trFinish - tblTrace.trStart AS TIME)) AS FastestUserSegmentTime,
MAX(CAST(tblTrace.trFinish - tblTrace.trStart AS TIME)) AS SlowestUserSegmentTime
FROM tblTrace
INNER JOIN tblUsers ON usrID = tr_usrID
WHERE tr_vnuID = @vnuID AND trFinish IS NOT NULL AND tr_usrID IS NOT NULL AND trObjectType LIKE 'Segment%'
AND trStart BETWEEN @StartDate AND @EndDate
GROUP BY usrFullName
SELECT AVG(TotalTime) AS AvgUserSegmentTime
FROM (SELECT DateDiff(SECOND, tblTrace.trStart , tblTrace.trFinish) as 'TotalTime'
FROM tblTrace
WHERE tblTrace.trFinish IS NOT NULL AND tblTrace.trObjectType LIKE 'Segment%' AND tblTrace.tr_vnuID = @vnuID
AND tblTrace.trStart BETWEEN @StartDate AND @EndDate) as SubQuery