Valeur null en SQL SERVER ??

Résolu/Fermé
cysod1879 Messages postés 106 Date d'inscription mercredi 12 juin 2013 Statut Membre Dernière intervention 1 août 2015 - 24 déc. 2014 à 11:01
cysod1879 Messages postés 106 Date d'inscription mercredi 12 juin 2013 Statut Membre Dernière intervention 1 août 2015 - 24 déc. 2014 à 20:04
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
A voir également:

1 réponse

jee pee Messages postés 40579 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 21 décembre 2024 9 460
Modifié par jee pee le 24/12/2014 à 11:19
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
cysod1879 Messages postés 106 Date d'inscription mercredi 12 juin 2013 Statut Membre Dernière intervention 1 août 2015 1
Modifié par jee pee le 24/12/2014 à 12:16
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
jee pee Messages postés 40579 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 21 décembre 2024 9 460
Modifié par jee pee le 24/12/2014 à 12:18
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
cysod1879 Messages postés 106 Date d'inscription mercredi 12 juin 2013 Statut Membre Dernière intervention 1 août 2015 1 > jee pee Messages postés 40579 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 21 décembre 2024
24 déc. 2014 à 20:04
Salut Merciiii Jee Pee ça marche bien avec la jointure OUTER, ;)
merci
0