Angepasst von meiner Antwort hier:
Ermitteln Sie die Anzahl der Tage zwischen den Montagen beider Wochen (mit TRUNC( datevalue, 'IW' )
). als NLS_LANGUAGE
unabhängige Methode zum Ermitteln des Montags der Woche), addieren Sie dann den Wochentag (Montag =1, Dienstag =2 usw. bis maximal 5, um Wochenenden zu ignorieren) für das Enddatum und subtrahieren Sie den Wochentag für das Startdatum. So:
SELECT ( TRUNC( end_date, 'IW' ) - TRUNC( start_date, 'IW' ) ) * 5 / 7
+ LEAST( end_date - TRUNC( end_date, 'IW' ) + 1, 5 )
- LEAST( start_date - TRUNC( start_date, 'IW' ) + 1, 5 )
AS WeekDaysDifference
FROM your_table