Anpassat från mitt svar här:
Få antalet dagar mellan måndagarna i båda veckorna (med TRUNC( datevalue, 'IW' )
som en NLS_LANGUAGE
oberoende metod för att hitta måndagen i veckan) lägg sedan till veckodagen (måndag =1, tisdag =2, etc., till maximalt 5 för att ignorera helger) för slutdatumet och subtrahera veckodagen för startdatumet. Så här:
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