|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : janvier 2007 Messages : 102 ![]() |
Bonjour,
Je suis sur AIX en version 9.2.0.5 d'Oracle et je voudrais rechercher les lignes d'une table dont la zone horadate - sysdate > 15. horodate est en char(16) J'ai essayé TO_NUMBER(horadate) - to_char(sysdate) j'obtiens ora-1722 invalid number sur l'expression to_char J'ai aussi essayé TO_NUMBER(horadate) - to_number(sysdate) la mème erreur mais sur sysdate Merci pour votre aide |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 450 ![]() |
Regarde bien la doc sur les dates. faut toujours un format
http://sheikyerbouti.developpez.com/...age=Chap3#L3.4 |
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Code :
to_date(horodate, '<le format qui va bien>') - sysdate |
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Inscription : janvier 2007 Messages : 102 ![]() |
Je suis désolé, mais je débute.
En suivant, surement mal vos conseils j'obtiens ce résultat select * from table where ((to_date(horodate, 'DD/MM/YYYY HH24:MI') - sysdate) > 15) * ERROR at line 1: ORA-01861: literal does not match format string |
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : septembre 2006 Messages : 87 ![]() |
bonjour,
ton erreur signifie que le format de horodate ne correspond pas au format DD/MM/YYYY HH24:MI. si tu met to_date(horodate, 'DD/MM/YYYY HH24:MI') , cela veut dire que tu doit avoir horodate comme ceci par exemple: '25/12/2006 23:59'. vérifie que horodate a ce format ci AEMAG |
|
|
00
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Inscription : janvier 2007 Messages : 102 ![]() |
Finalement j'arrive au résultat ainsi
where (to_char(sysdate, 'YYYYMMDD') - substr(horodatage,1,8) > 15); Merci pour votre aide |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com