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 :

difference entre is null et egal a null?


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Inscrit en
    Février 2004
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 120
    Par défaut difference entre is null et egal a null?
    salut à tous
    je voudrais savoir pourquoi cette requete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select *
    from artiste
    where annee_naissance =''
    ne retourne rien par contre celle ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select *
    from artiste
    where annee_naissance is null
    retourne les lignes dont l'annee_naissance est null :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    annee_naissance number(4)
    @+SALI

  2. #2
    Membre émérite
    Avatar de efficks
    Inscrit en
    Septembre 2005
    Messages
    712
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 712
    Par défaut
    Quand tu fais " = '' " tu compare une chaîne de caractère alors que ton année est un nombre entier. Tu dois donc comparer avec un entier NULL donc IS NULL.

  3. #3
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    Contrairement à Oracle, la plupart des SGDB font la différence entre une chaîne de caractères vide '' et NULL. Je suppose que c'est le cas du tien.
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  4. #4
    Membre confirmé

    Inscrit en
    Février 2004
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 120
    Par défaut
    merci les gars
    Xo, j'utilise 9i
    @+SALI

  5. #5
    Xo
    Xo est déconnecté
    Membre Expert
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Par défaut
    Justement, Oracle (9i ou autre) ne fait pas la différence entre une chaîne vide et NULL.

    Mais j'ai retrouvé le post donnant la réponse à ton problème : [Résolu] [Null][Vide] VARCHAR2 Pareil ou pas ?

    cf le 3° post de nuke_y, tu as ta réponse :
    Citation Envoyé par nuke_y
    '' et null sont la même chose et test = '' ne renvoit jamais rien !!
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

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

Discussions similaires

  1. UPDATE entre deux tables et souci de NULL
    Par Avatar69 dans le forum Développement
    Réponses: 3
    Dernier message: 30/01/2013, 12h01
  2. Difference entre null et "" pour un String
    Par Bobble dans le forum VBA Access
    Réponses: 6
    Dernier message: 11/06/2009, 12h12
  3. Réponses: 7
    Dernier message: 03/02/2006, 13h50
  4. [VB6] [BDD] Recordset et champ égal à Null
    Par Gr|ppen dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 07/03/2003, 10h00

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