Mot-clé MySQL IS NULL
Le mot-clé IS NULL de MySQL est utilisé pour vérifier si une colonne contient une valeur NULL. Il est souvent utilisé dans les instructions conditionnelles pour filtrer ou identifier les lignes contenant des données manquantes.
Utilisation
Le mot-clé IS NULL est utilisé dans les instructions SELECT, UPDATE ou DELETE pour tester la présence de valeurs NULL dans une colonne donnée. Il permet de traiter les données qui peuvent être incomplètes ou manquantes.
sql
SELECT column1, column2, ...
FROM table_name
WHERE column_name IS NULL;
Dans cette syntaxe, column_name IS NULL vérifie si column_name contient une valeur NULL.
Exemples
1. Contrôle NULL de base
sql
SELECT *
FROM products
WHERE price IS NULL;
Cet exemple permet d'extraire tous les tableaux du tableau products dont la colonne price est NULL.
2. Mise à jour des valeurs NULL
sql
UPDATE employees
SET department = 'Unassigned'
WHERE department IS NULL;
Ici, tous les enregistrements d'employés avec un département NULL sont mis à jour en "Non attribué".
3. Suppression des lignes avec NULL
sql
DELETE FROM orders
WHERE shipment_date IS NULL;
Cette commande supprime toutes les entrées du tableau orders où la date d'expédition est manquante (NULL).
4. Combinaison de IS NULL et IS NOT NULL
sql
SELECT *
FROM orders
WHERE shipment_date IS NULL OR delivery_date IS NOT NULL;
Cet exemple sélectionne les enregistrements dont la date d'expédition est NULL ou la date de livraison n'est pas NULL, illustrant l'utilisation combinée de IS NULL et IS NOT NULL.
Conseils et bonnes pratiques
- Utilisez IS NULL pour la précision. Utilisez toujours
IS NULLau lieu de= NULLpour garantir une vérification précise des valeurs NULL. L'utilisation de= NULLne donnera pas de résultats corrects car, en SQL, NULL représente une valeur inconnue et ne peut pas être mis en équation. - Tenez compte de l'intégrité des données. Utilisez
IS NULLpour trouver et traiter les données incomplètes, en garantissant l'intégrité et la cohérence des données. - Combinez avec IS NOT NULL. Associez
IS NULLàIS NOT NULLpour gérer efficacement les données manquantes et non manquantes. - Prise en compte de l'index. N'oubliez pas que les valeurs NULL ne sont pas indexées dans MySQL, ce qui peut entraîner des balayages complets du tableau et affecter les performances des requêtes. Soyez attentif à cela, en particulier pour les grands ensembles de données.