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

Développement SQL Server Discussion :

Calculer la différence entre deux dates en nombre de jours


Sujet :

Développement SQL Server

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 61
    Points : 36
    Points
    36
    Par défaut Calculer la différence entre deux dates en nombre de jours
    Bonjour,
    j'ai une procédure stockées qui me sort des informations,je dois ajouter a ma procédure une colonne"Nombre de jours" qui permet de calculer la différence entre deux dates parmis les données sélectionnées de la procédure 1 ,l'image sur execl explique mon soucis :

    Nom : Capture.JPG
Affichages : 1135
Taille : 38,3 Ko

    je dois calculer la différence en nombre de jours entre la première date et la date qui suit ,la colonne calcul dans Execl montre comment je dois calculer la difference.
    j'ai pensé a créer une fonction qui prend en paramétré la date d'un enregistrement (@jrs) et dans laquelle il ya un select top 1 from Procedure 2 (duplication de procedure1) where jours >@jrs order by jours desc


    mais je trouve que c'est lourd ,est ce que il ya un autre moyens plus simple pour faire ce genre de calcul?
    merci Bcp.

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Il est dommage que vous n'ayez pas respecté la charte de postage : on ne connait pas la structure de la table qui contient les données à manipuler.
    Si en effet il existe une autre colonne qui permet de déterminer l'ordre, c'est assez facile. On peut s'en passer, mais c'est moins performant.
    Dans les deux cas, on doit spécifier une auto-jointure.

    @++

  3. #3
    Membre du Club
    Homme Profil pro
    unix
    Inscrit en
    Septembre 2016
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : unix
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2016
    Messages : 83
    Points : 58
    Points
    58
    Par défaut
    tu peut profiter la fonction lead dissponible a partir de sql server 2012

    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
     
    create table calendrier
    (operation varchar(50),
    jour date 
    )
     
    insert into calendrier values('operation1','2013-04-04')
    insert into calendrier values('operation2','2013-10-25')
    insert into calendrier values('operation3','2013-12-13')
    insert into calendrier values('operation4','2013-12-26')
    insert into calendrier values('operation5','2013-12-30')
    insert into calendrier values('operation6','2013-12-31')
    insert into calendrier values('operation7','2014-01-01')
     
    select *,datediff(day,LEAD(jour,1)over(order by operation),jour) from calendrier

Discussions similaires

  1. [AC-2007] calculer la différence entre deux dates en minutes
    Par sarah12 dans le forum IHM
    Réponses: 5
    Dernier message: 20/07/2010, 16h44
  2. Calculer une différence entre deux dates
    Par attif0709 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/04/2010, 13h06
  3. [AC-2003] Calcul de différence entre deux dates : problème de format
    Par sinifroth dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 22/01/2010, 16h35
  4. Calcul de différence entre deux dates cas vaut 0
    Par zanoubya dans le forum Débuter
    Réponses: 3
    Dernier message: 25/12/2008, 20h45
  5. Calculer la différence entre deux dates
    Par drthodt dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 18/12/2007, 09h27

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