SQL NULL Valeurs
Qu'est-ce qu'une valeur NULL ?
Un champ avec une valeur NULL est un champ sans valeur.
Si un champ d'une table est facultatif, il est possible d'insérer un nouvel enregistrement ou de le mettre à jour sans ajouter de valeur à ce champ. Le champ sera alors enregistré avec une valeur NULL.
Remarque : Une valeur NULL est différente d'une valeur nulle ou d'un champ contenant des espaces. Un champ avec une valeur nulle est un champ laissé vide lors de la création de l'enregistrement !
Comment tester les valeurs NULL ?
Il n'est pas possible de tester les valeurs NULL avec des opérateurs de comparaison, tels que =, <, ou <>.
Nous devrons utiliser les opérateurs IS NULL
et IS NOT NULL
à la place.
IS NULL Syntaxe
SELECT column_names
FROM table_name
WHERE column_name IS NULL;
IS NOT NULL Syntaxe
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
Base de données de démonstration
Voici un extrait de la table "Customers" de la base de données d'exemple Northwind :
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 |
Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
4 |
Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
L'opérateur IS NULL
L'opérateur IS NULL
permet de tester les valeurs vides (valeurs NULL).
Le code SQL suivant répertorie tous les clients dont le champ "Address" contient une valeur NULL :
Exemple
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NULL;
Try it Yourself »
Astuce : Utilisez toujours IS NULL pour rechercher les valeurs NULL.
L'opérateur IS NOT NULL
L'opérateur IS NOT NULL
permet de tester les valeurs non vides (valeurs NOT NULL).
La requête SQL suivante répertorie tous les clients dont le champ "Address" contient une valeur :
Exemple
SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NOT NULL;
Try it Yourself »
W3Schools SQL Tutoriel vidéo. Valeurs NULL SQL
Cette vidéo est une introduction aux valeurs NULL en SQL.
Cette vidéo fait partie d'une série de tutoriels vidéo pour apprendre SQL pour les débutants !