Bonjour,
Je souhaite être à même de déterminer le nombre de jours ouvrés (Lundi à Vendredi) entre 2 dates.
Y a t-il un moyen simple de réaliser cette requête ?
Je suis sur Oracle 11g.
Julien.
Bonjour,
Je souhaite être à même de déterminer le nombre de jours ouvrés (Lundi à Vendredi) entre 2 dates.
Y a t-il un moyen simple de réaliser cette requête ?
Je suis sur Oracle 11g.
Julien.
Bonjour,
J'ai utilisé le format 'D'.
J'ai une solution par une function pl/sql.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 create or replace function jours_ouvres ( prem date, dern date ) return number is ld_date_courante date; ln_intervalle number(6) := 0; ln_compteur number(6) := 0; begin ln_intervalle := ( dern - prem ) + 1; for k in 1..ln_intervalle loop ld_date_courante := prem + ( k - 1 ); if to_char ( ld_date_courante, 'D' ) in ( '1', '2', '3', '4', '5' ) then ln_compteur := ln_compteur + 1; end if; end loop; return ln_compteur; end;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 select empno, hiredate, date_mutation, jours_ouvres( hiredate, date_mutation ) from jbmemp order by hiredate desc nulls last
C'est ce que je pensais faire mais n'y a t-il rien d'autre du style ce qu'il y a sur excel ?
Merci quand même.
Bonjour,
Peut-être pourrais-tu préciser ce qu'il y a sur Excel que tu voudrais faire ici ?
En quoi la solution précédente ne te convient pas ? Elle répond à ta demande pourtant.
Je pense qu'il fait référence à une fonction sur Excel qui effectue le calcul directement entre deux dates.
Cette fonction a en plus comme paramètre la possibilité d'indiquer une liste de valeurs correspondant à des jours fériés sur l'intevalle.
Pour ORACLE, je ne connais pas l'identique sans passer par du PL/SQL comme indiqué précédemment.
Cordialement
Mon collègue m'avait parlé de joursem mais je ne vois pas comment il peut combiner facilement datediff et joursem sauf à faire de la programmation vba ce qui équivaut à ce que vous proposez.
Je vais donc utiliser la fonction.
Merci.
Julien.
Partager