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

Sybase Discussion :

[T-SQL]jours ouvrés: operation sur les dates


Sujet :

Sybase

  1. #1
    Membre habitué Avatar de agougeon
    Inscrit en
    Mai 2005
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 253
    Points : 147
    Points
    147
    Par défaut [T-SQL]jours ouvrés: operation sur les dates
    Bonjour, je cherche un moyen d'effectuer un calclu sur les dates.
    J'aimerai calculer à partir de n'importe quelles dates J - 5 jours ouvrés (cas des week end et pourquoi pas des jours férier en fonction du calendrier...)
    Merci

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Pour les week-end on peut utiliser un CASE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    declare @d date
    select @d='20060722'
    select dateadd(day, 
               case when datepart(dw, @d) = 1 then -6 
                      when datepart(dw, @d) = 7 then -5 
                      else -7 
               end, @d)
    Pour les jours fériés - on peut les recenser dans une table et référencer cette table dans le case ci-dessus - un exercice qui est laissé à l'étudiant :-)

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  3. #3
    Membre habitué Avatar de agougeon
    Inscrit en
    Mai 2005
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 253
    Points : 147
    Points
    147
    Par défaut
    ok, je te remercie ^^
    Ca devrai suffir

  4. #4
    Membre régulier
    Inscrit en
    Mai 2008
    Messages
    298
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 298
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    Désolé de rouvrir ce topic mais c'est exactement ce dont j'avais besoin.

    Contrairement à la 1ère question, moi il me faudrait ajouter 3 jours supplémentaire et non pas supprimer 5 jours.
    Disons que j'aimerais ajouter 3 jours ouvré sans compter le samedi et le dimanche. P.e: si ma date est le vendredi 3, j'aimerais afficher le mercredi 8.

    J'ai essayé de trouver la solution mais rien à faire...
    Qqun peut m'aider ??

    Merci d'avance

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Si la date de départ est un jour ouvré, ceci devrait marcher:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    declare @d date
    select @d = '20110118'
    select dateadd(dd, 3 + case when datepart(cdw, @d) < 3 then 0 else 2 end, @d)
    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  6. #6
    Membre régulier
    Inscrit en
    Mai 2008
    Messages
    298
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 298
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    Merci beaucoup pour votre aide, c'est exactement ce que je cherchais.

    Merci.

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

Discussions similaires

  1. [HF19] Operation sur les dates
    Par EyZox dans le forum HyperFileSQL
    Réponses: 0
    Dernier message: 09/05/2014, 08h59
  2. Operation sur les dates dans SAS
    Par scorpion0686 dans le forum SAS Base
    Réponses: 5
    Dernier message: 08/04/2008, 12h48
  3. fonctions sur les dates : nb.jours.ouvres
    Par overider dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 06/09/2007, 15h02
  4. Opération sur les dates (Shell)
    Par argoet dans le forum Linux
    Réponses: 6
    Dernier message: 21/06/2005, 13h56
  5. operation sur les dates
    Par elendil dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/04/2005, 12h14

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