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

Langage SQL Discussion :

Probleme avec le format DATE sur ORACLE


Sujet :

Langage SQL

  1. #1
    B&B
    B&B est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 20
    Points : 14
    Points
    14
    Par défaut Probleme avec le format DATE sur ORACLE
    Hello,

    Je suis ORACLE 10g Entreprise Edition et j'ai une table avec une colonne DATE avec comme format à l'affichage DD/MM/YY.

    Mon probleme est que j'arrive pas à selectionner les lignes d'une date que j'ai fourni dans le WHERE.

    Par exemple que je fasse ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select * From TOTO Where date_stamp = '05/01/08'
    ou bien ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select * From TOTO Where date_stamp = TO_DATE ('05/01/08', 'DD/MM/YY')
    ou meme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select TO_CHAR(date_stamp,'DD/MM/YY') From TOTO Where date_stamp = TO_DATE('05/01/08','DD/MM/YY')
    je n'obtiens aucune ligne alors que cette date existe...


    Il n'y a qu'avec un LIKE que je peux recuperer les lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select * From TOTO Where date_stamp LIKE '05/01/08%'
    Ca voudrait dire qu'il y a qqch apres la date, mais pourtant la fonction TO_DATE devrait justement eviter ce probleme en lisant la date et en la formatant avec le format voulu... je vois pas d'ou ca peut venir...

    Quelqu'un aurait la solution , pls ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    500
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 500
    Points : 639
    Points
    639
    Par défaut
    Il vaut mieux formater ta colonne date_stamp au format de la valeur à laquelle tu veux la comparer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM TOTO WHERE TO_CHAR(date_stamp, 'DD/MM/YY') = '05/01/08'

  3. #3
    B&B
    B&B est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 20
    Points : 14
    Points
    14
    Par défaut
    Citation Envoyé par dgi77 Voir le message
    Il vaut mieux formater ta colonne date_stamp au format de la valeur à laquelle tu veux la comparer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM TOTO WHERE TO_CHAR(date_stamp, 'DD/MM/YY') = '05/01/08'
    yeaaah ca marche, thx !

  4. #4
    Membre expérimenté Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Points : 1 736
    Points
    1 736
    Par défaut
    Sur Oracle, quand tu veux comparer des colonnes de type date avec des chaînes de caractères, il faut toujours utiliser la fonction TO_CHAR pour mettre la date au format que tu souhaites, sinon en fonction des paramètres régionaux du client ou du serveur, les formats des dates peuvent changer (ex : MMDDYYYY au lieu de DDMMYYYY) et du coup ta comparaison peut être faussée, c'est sans doute pour ça qu'il ne te retournait aucune ligne

Discussions similaires

  1. [AC-2010] probleme avec une valeur null sur une date
    Par kynder surprise dans le forum VBA Access
    Réponses: 3
    Dernier message: 07/05/2012, 17h28
  2. Probleme avec les formats de date
    Par judavid dans le forum SQL
    Réponses: 4
    Dernier message: 13/03/2009, 16h58
  3. format date sur oracle?
    Par erox44 dans le forum Débuter
    Réponses: 7
    Dernier message: 07/04/2008, 10h40
  4. probleme avec la format date dans ireport
    Par 7rouz dans le forum iReport
    Réponses: 3
    Dernier message: 09/07/2007, 08h54
  5. probleme avec le format de la date
    Par stan30160 dans le forum Access
    Réponses: 15
    Dernier message: 19/06/2006, 11h49

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