Ich habe drei Tabellen, von denen eine ist ein Hauptkalender, der einen Indikator für Betriebsferien enthält. Ich möchte Holiday von meiner DateDiff-Berechnung ausschließen. Im Folgenden finden Sie, was ich habe ...Sql Server 2008 Firmenurlaub von DateDiff ausschließen
Alarmdatum 12/23/16 vollständige Datum 12/28/16 Firma Ferien 12/26/16 Need von DATEDIFF Berechnung
--Mein Berechnung zeigt an exlude 3 Werktage es Unternehmen 12/26/16 = 2 Tage ausschließen sollte
DATEDIFF(DD,A.ALERTS_CREATE_DT,S.CreatedDate)
-(DATEDIFF(WK,A.ALERTS_CREATE_DT,S.CreatedDate) * 2) --HOW MANY WEEKEND DAYS PASSED BY
-(CASE WHEN DATENAME(DW,A.ALERTS_CREATE_DT) = 'Sunday' THEN 1 ELSE 0 END)
-(CASE WHEN DATENAME(DW,S.CreatedDate) = 'Saturday' THEN 1 ELSE 0 END)
-(CASE WHEN CAL.GRH_HOLIDAY_IND = 'Y' THEN 1 ELSE 0 END)
-( SELECT COUNT(CAL.GRH_HOLIDAY_IND)
FROM A
FULL OUTER JOIN S ON A.ID= S.ID
INNER JOIN CAL ON A.ALERTCREATEDT_MMDDYYYY = CAL.CALENDAR_DATE
WHERE 1=1
AND Cal.GRH_HOLIDAY_IND = 'Y'
AND CAL.CALENDAR_DATE between CAST(A.CREATE_DT AS DATE) AND CAST(S.CreatedDate AS DATE)) AS BusinessDays
der Versuch, die Feiertage zu entfernen ist, wo ich bin zu kämpfen, siehe unten.
Weitere Informationen benötigt? – John
Ich bin mir nicht sicher, wie ich die Feiertage behandeln soll. – John