2016-07-28 11 views
0

で一緒にカウントし、最大の使用:私はこのようなテーブルを持っているSQL Serverの

ID ReceptionDate ResultFixedDateTime FinalMeasurementEndDateTime 
---------------------------------------------------------------- 
1 2014-01-01 2014-01-01 10:20:35 2014-01-01 09:20:35 
2 2014-01-01 2014-01-01 10:30:35 2014-01-01 09:40:35 
3 2014-01-01 2014-01-01 10:50:35 2014-01-01 09:45:35 
4 2014-01-02 2014-01-02 10:50:35 2014-01-02 09:45:35 
5 2014-01-02 2014-01-02 10:50:35 2014-01-02 09:45:35 

私は、ReceptionDateによって同じReceptionDateとレコードの合計数と最大時間をそのグループ以下のような結果を必要とします

ReceptionDate

ReceptionDate Count  OperatingDiff 
-------------------------------------- 
2014-01-01 3   65 
2014-01-02 2   65 

与えられたこのクエリが予想よりもレコードの多くの数を返すための差(ResultFixedDateTime - FinalMeasurementEndDateTime

私がここで間違っている何

MAX(DATEDIFF(MINUTE, ET.ResultFixedDateTime, ET.FinalMeasurementEndDateTime)) AS OverTimeDiff 

を取るときには、レコードの正しい数を返すのですか?

+1

'MAXは()'を返すレコードの数には影響しませんしません。 – Squirrel

答えて

1

はResultFixedDateTime &決勝MeasurementEndDateTimeでグループ

SELECT ET.ReceptionDate, 
     COUNT(ET.ReceptionDate), 
     MAX(DATEDIFF(MINUTE, ET.ResultFixedDateTime, ET.FinalMeasurementEndDateTime)) AS OverTimeDiff 
     FROM ExaminationTimes ET 
     WHERE ET.ReceptionDate BETWEEN @StartDate AND @EndDate  
     GROUP BY ET.ReceptionDate 
     --,ET.ResultFixedDateTime 
     --,ET.FinalMeasurementEndDateTime 
     ORDER BY ET.ReceptionDate 
+0

うわー、素晴らしい。それはうまくいった。 – Srini

関連する問題