IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

Intervalle Date Sans Compter Les Week Ends


Sujet :

Oracle

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Intervalle Date Sans Compter Les Week Ends
    j'ai une table contenant tous les jours d'une année, je voudrais calculer dans une colonne de celle ci , le nombre de jour ouvrés (sans les weeks ends) separant chaque date de son premier jour ouvré du mois

    Exemple 1:
    premier jour du mois 01/05/06 , alors le 03/05/06 aura la valeur 2 et le 01/05/06 la valeur 0

    Exemple 2:
    premier jour du mois 01/05/06 , alors le 08/05/06 aura la valeur 6 et le 01/05/06 la valeur 0

    Je ne comptes pas les weekends

    Comment faire avec une procedure PLSQL, car j'arrive a faire cela en comptant les weekends

  2. #2
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  3. #3
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Il y a peut-être plus simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select laDate - trunc(laDate,'MONTH') - (trunc((laDate - trunc(laDate,'MONTH') + to_char(trunc(laDate,'MONTH'), 'D') + 1)/7) +
                                             trunc((laDate - trunc(laDate,'MONTH') + to_char(trunc(laDate,'MONTH'), 'D') )/7)) + 
                                             decode(to_char(trunc(laDate,'MONTH'), 'D'), '7', 2, 1) as Nombre 
    from laTable
    J'affirme péremptoirement que toute affirmation péremptoire est fausse
    5ième élément : barde-prince des figures de style, duc de la synecdoque
    Je ne réponds jamais aux questions techniques par MP

  4. #4
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Citation Envoyé par Médiat
    Il y a peut-être plus simple
    Sauf que ta méthode ne tient pas compte des jours fériés
    => donc pour le 01/05/06 tu auras 1 et non 0

    NB : si les jours fériés n'ont pas d'importance, il faut ajouter trunc sur la première date pour avoir la différence en nombre de jours entiers.
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

  5. #5
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    La question était : sans les week-ends, et c'est d'ailleurs la seule partie qui vaut d'être automatisée, je ne connais pas de formule qui te donne, sans avoir à les lister, le 01/01 le 01/05 le 14/07 etc...
    J'affirme péremptoirement que toute affirmation péremptoire est fausse
    5ième élément : barde-prince des figures de style, duc de la synecdoque
    Je ne réponds jamais aux questions techniques par MP

  6. #6
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Merci
    Merci j'ai trouvé un element de réponse ici :

    http://asktom.oracle.com/pls/ask/f?p...A:185012348071

  7. #7
    Membre expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Points : 3 609
    Points
    3 609
    Par défaut
    Citation Envoyé par Médiat
    La question était : sans les week-ends, et c'est d'ailleurs la seule partie qui vaut d'être automatisée, je ne connais pas de formule qui te donne, sans avoir à les lister, le 01/01 le 01/05 le 14/07 etc...
    1. Je faisais juste remarquer que ta requête ne répondait pas à l'exemple donné par datamind.

    2. Comme l'a fait Tom dans l'exemple que j'ai donné, il suffit d'avoir une table qui comporte tous les jours fériés. Pour ceux qui sont à date variable, il existe des algorithme qui permettent de les calculer.

    Mais je ne sais pas exactement ce que voulait datamind puisque son exemple n'est pas en adéquation avec sa question...
    Un problème sans solution est un problème mal posé

    Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 17/09/2014, 12h39
  2. Enlever les week-ends entre deux dates
    Par alitazichibi dans le forum Requêtes
    Réponses: 8
    Dernier message: 13/11/2012, 07h48
  3. Condition VBA J-4 sans les week end
    Par Naoned005 dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 12/06/2012, 20h47
  4. Réponses: 0
    Dernier message: 10/06/2008, 16h57
  5. requete de date sans les week-end
    Par bolloche dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/05/2008, 23h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo