Les valeurs NULL représentent des données manquantes inconnues.
Par défaut, une colonne de table peut contenir des valeurs NULL.
Ce chapitre explique l'IS NULL et IS NOT NULL.
SQL valeurs NULL
Si une colonne dans une table est facultative, on peut insérer un nouvel enregistrement ou mettre à jour un enregistrement existant sans ajouter une valeur à cette colonne. Cela signifie que le champ sera enregistré avec une valeur NULL.
Les valeurs NULL sont traitées différemment des autres valeurs.
NULL est utilisé comme un espace réservé pour des valeurs inconnues ou inapplicables.
Note: Il est impossible de comparer NULL et 0;ils ne sont pas équivalentes.
SQL Travailler avec les valeurs NULL
Regardez ce qui suit "Persons" tableau:
p_id | Nom de famille | Prénom | Adresse | Ville |
---|---|---|---|---|
1 | Hansen | Ola | Sandnes | |
2 | Svendsen | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Stavanger |
Supposons que le "Address" colonne dans le "Persons" table est facultative. Cela signifie que si nous insérons un record sans valeur pour la "Address" colonne, la "Address" colonne sera enregistrée avec une valeur NULL.
Comment peut-on tester les valeurs NULL?
Il est impossible de tester les valeurs NULL avec des opérateurs de comparaison, comme =, <, ou <> .
Nous devrons utiliser l'IS NULL et IS NOT NULL à la place.
SQL IS NULL
Comment peut -on choisir uniquement les enregistrements avec des valeurs NULL dans le "Address" colonne?
Nous devrons utiliser l'opérateur is NULL:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NULL
Le résultat-set ressemblera à ceci:
Nom de famille | Prénom | Adresse |
---|---|---|
Hansen | Ola | |
Pettersen | Kari |
Astuce: Toujours utiliser IS NULL pour trouver les valeurs NULL.
SQL IS NOT NULL
Comment peut -on choisir uniquement les enregistrements sans valeurs NULL dans le "Address" colonne?
Nous devrons utiliser l'IS NOT NULL opérateur:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NOT NULL
Le résultat-set ressemblera à ceci:
Nom de famille | Prénom | Adresse |
---|---|---|
Svendsen | Tove | Borgvn 23 |
Dans le chapitre suivant , nous examinerons la ISNULL() , NVL() , IFNULL() et COALESCE() fonctions.