2016-07-28 27 views
0

Ich habe eine Tabelle wie folgt aus:Mit Count und Max zusammen in 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 

Ich brauche ein Ergebnis wie unten, dass Gruppen von der ReceptionDate, Gesamtanzahl der Datensätze mit dem gleichen ReceptionDate und die maximale Zeit Differenz (ResultFixedDateTime - FinalMeasurementEndDateTime) für die gegebene ReceptionDate

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

Diese Abfrage wird Rückkehr mehr Anzahl der Datensätze als erwartet:

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 

Es ist die richtige Anzahl der Datensätze zurückkehrt, wenn ich

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

nehmen Was ist hier falsch?

+1

die 'MAX()' nicht die Anzahl der Datensätze beeinflussen zurückzukehren. – Squirrel

Antwort

1

nicht Gruppe von ResultFixedDateTime & Finale 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

Wow, Super. Das hat funktioniert. – Srini