Aangepast van mijn antwoord hier:
Verkrijg het aantal dagen tussen de maandagen van beide weken (gebruik TRUNC( datevalue, 'IW' )
als een NLS_LANGUAGE
onafhankelijke methode om de maandag van de week te vinden) voeg vervolgens de dag van de week toe (maandag =1, dinsdag =2, enz., tot een maximum van 5 om weekends te negeren) voor de einddatum en trek de dag van de week af voor de startdatum. Zoals dit:
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