Différence entre 2 dates en nombre de jours

Messages postés
2
Date d'inscription
vendredi 27 décembre 2013
Statut
Membre
Dernière intervention
21 janvier 2014
-
Bjr,à tous

Débutant, j'ai crée une table dont une colonne est <gras><gras>''Date de rédaction"
Date de redaction:
20071201
20080514
20090623
20090703
20110215
20101105
20130427
..............etc(quelques milliers de lignes)
Je voudrai obtenir la différence entre la date de référence( date du jour ou autre date) et la date de redaction en Nbre de jours
Date de référence( du jour ou autre)-Date de redaction(pour toutes les lignes)=Nbre de jours
D'Avance Merci pour votre aide ou vos conseils
Afficher la suite 

4 réponses

Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
16
Commenter la réponse de nagaD.scar
Messages postés
2
Date d'inscription
vendredi 27 décembre 2013
Statut
Membre
Dernière intervention
21 janvier 2014
0
Merci
Bjr

J'ai ajouté dans ma table une colonne 'nbredejours'
j'ai trouvé cet exemple :
Select datediff(@d1,d2)as 'd1-d2';
Cela ne foncctionne pas
Select datediff(day'dtredac','20140121' )as nbredejours from 'ma table';
ERREUR à la ligne 1 :
ORA-00904: "DATEDIFF" : identificateur non valide
Select trunc(20140121)-trunc(dtredac) as nbredejours from 'ma table';
J'ai testé cette syntaxe et j'obtiens
SQL> select trunc(20140121)-trunc(dtredac) as nbredejours from iqspi1uprso; avec 20140121=date d'aujourd'hui et dtredac=date de redaction
que représente se résultat
...suite...

NBREDEJOURS
-----------
39295
39294
39213
39207
39193
39191
39117
39110
38904
38900
30014
29818
29796
29618
29602
29415
29396
29200
29004
D'avance Merci pour votre aide et vos conseils

Cdlt
nagaD.scar
Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
16 -
Bon les commentaires de jordane45 sont pertinents, il faudra les prendre en compte par la suite.

Sinon, écris plutot ceci :


select trunc(20140121)-trunc(dtredac) as nbredejours,dtredac from iqspi1uprso;

et affiche le résultat (en utilisant les balises
<code>
)
Commenter la réponse de xavier33000
Messages postés
26662
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 novembre 2019
316
0
Merci
Bonjour,

Point 1 : Comme je te l'ai déjà fait remarquer... il serait bien pour que les réponses soient pertinentes, que tu indiques sous quelle BDD tu travailles...
Vu le message d'erreur : "ORA-00904" il semble que tu travailles sous une BDD ORACLE !

Point 2 : Si tu es sur Oracle.. il est normal que certaines commandes utilisées pour sql server ou MySql ne fonctionnent pas... (logique non ??!!)

Point 3 : Lorsque tu colles du code sur le forum, merci d'utiliser la coloration syntaxique (voir ICI )

nagaD.scar
Messages postés
4265
Date d'inscription
samedi 8 septembre 2007
Statut
Membre
Dernière intervention
29 août 2018
16 -
ah oui s'il est sous oracle, datediff ne sert à rien, une opération simple suffit :


select DATE1-DATE2 from table

naga
Commenter la réponse de jordane45
Messages postés
15
Date d'inscription
dimanche 29 septembre 2013
Statut
Membre
Dernière intervention
21 février 2014
0
Merci
(sysdate-(to_date(tadate,'YYYYMMDD'))


Edité par jordane45: Ajout des balises de code.
Commenter la réponse de VB_TROYES