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

SQL Oracle Discussion :

date de type Number!


Sujet :

SQL Oracle

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Par défaut date de type Number!
    Bonjour,
    il parrait que la base sur laquelle je travaille les champ date sont de type number!
    Je souhaite donc comparer ce champ date avec la date du system, j'ai converti la date de system
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    to_number(to_char(sysdate,'YYYYMMFF'))
    , mais j'arrive toujours pas à faire une comaparaison de style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date > to_number(to_char(sysdate,'YYYYMMFF'))
    est ce que cela est dû au fait que date peut être null ?

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    C'est quoi le problème avec cette clause ?

  3. #3
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    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
     
    Connected to Oracle Database 10g Express Edition Release 10.2.0.1.0 
    Connected as mni
     
    SQL> 
    SQL> With Tabl As (
      2    Select cast(null as number(8)) as dat from dual union all
      3    Select  20100131                      from dual
      4  )
      5  Select * from tabl where dat > to_number(to_char(sysdate,'YYYYMMDD'))
      6  /
     
           DAT
    ----------
      20100131

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Par défaut
    merci beaucoup mnitu et orafrance pour vos reponses

    Citation Envoyé par orafrance Voir le message
    C'est quoi le problème avec cette clause ?
    le problème est le cas ou le champ dat est null cela me génére des erreur dans le programme.

    merci encore

  5. #5
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    C'est un jeu de devinette ou tu vas finir par nous donner l'erreur ?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Par défaut
    Non il n'y a pas vraiment d'erreur, le problème c'est que j'utilise cette condition dans une requête dans mon programme et je n'obtient pas le resultat souhaité quand les champ dat sont null

    merci encore pour ton aide.

  7. #7
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Si tu veux les champs NULL en plus il faut ajouter
    ou remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    date > to_number(to_char(sysdate,'YYYYMMFF'))
    par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NVL(date,to_number(to_char(sysdate+1,'YYYYMMFF')) > to_number(to_char(sysdate,'YYYYMMFF'))

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 568
    Par défaut
    C'est parfait je vous remercie encore.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/11/2013, 17h07
  2. type date attendu mais number trouvé
    Par moustaf_26 dans le forum Bases de données
    Réponses: 6
    Dernier message: 09/10/2011, 12h25
  3. Réponses: 11
    Dernier message: 01/12/2005, 10h46
  4. Variable Oracle de type number
    Par marti dans le forum Oracle
    Réponses: 1
    Dernier message: 16/08/2005, 11h04
  5. Convertir une date en type string
    Par ziboux dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 29/10/2003, 10h52

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