Valeur null en SQL SERVER ??

Résolu
Bonjour,

J'ai une table en SQL SERVER qui contient dans quelques lignes la valeur NULL, mais quand je fais une requête SELECT, je trouve pas ces lignes, seulement les autres qui contiennent des valeur!!! je veux que ma requête affiche toutes les lignes

Comment ça marche SVP?
Merci beaucoup d'avance

1 réponse

  1. Modérateur
    Salut,

    Il faudrait que tu nous montres ta requête. C'est sur une seule table ou sur plusieurs ? Car la solution n'est pas la même

    Pour une seul table sur le champ concerné, tu dois avoir un critère style
    A=1
    ,
    il faut alors mettre
    (A=1 or A is NULL)


    cdlt

            Un étranger, c'est un ami qu'on n'a pas encore rencontré.
    1
    1. Salut Jee Pee merci déjà pour la réponse

      Voici ma requête qui en fait compte sur plusieur table

      select j.nom ,m.nom  
      from emploi_seance es
      join jour j on es .id_jour =j.id
      join matiere m on es .id_matiere =m .id
      join emploi e on es .id_emploi =e.id
      where es .id_jour =1
      group by j.nom ,es .id_seance, m .nom


      il y' a des lignes qui contient Null dans la colonne Matiere et et qui ne s'affichent pas
      0
    2. Modérateur
      Une jointure classique ne ramène pas les lignes pour des champs non renseignés.

      Pour ramener toutes les lignes d'une table, même si la colonne de jointure n'est pas renseignée, il faut utiliser une jointure externe. A voir : https://docs.microsoft.com/fr-fr/previous-versions/sql/sql-server-2008-r2/ms187518(v=sql.105)?redirectedfrom=MSDN

      donc peut être (je suis plus familier de la syntaxe d'oracle qui est différente ;-)

      LEFT OUTER JOIN  matiere m on es .id_matiere =m .id 
      0
    3. @jee peeSalut Merciiii Jee Pee ça marche bien avec la jointure OUTER, ;)
      merci
      0