Adapté de ma réponse ici :
Obtenir le nombre de jours entre les lundis des deux semaines (en utilisant TRUNC( datevalue, 'IW' )
en tant que NLS_LANGUAGE
méthode indépendante de recherche du lundi de la semaine) puis ajouter le jour de la semaine (lundi =1, mardi =2, etc., jusqu'à un maximum de 5 pour ignorer les week-ends) pour la date de fin et soustraire le jour de la semaine pour la date de début. Comme ceci :
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