Instruction de cas SQL lorsque la valeur est nulle

Instruction De Cas Sql Lorsque La Valeur Est Nulle



L'exécution conditionnelle fait référence à la capacité d'exécuter un bloc de code uniquement si une condition spécifique est remplie. C'est une opération très répandue dans le développement. Par exemple, la manière la plus courante de réaliser une exécution conditionnelle en SQL consiste à utiliser l'instruction CASE.

L'instruction CASE nous permet d'effectuer la logique conditionnelle en vérifiant la valeur d'une ou plusieurs colonnes dans une table, puis en exécutant un bloc de code spécifique en fonction du résultat de cette vérification.







Ce tutoriel nous apprend à utiliser l'instruction CASE si une valeur donnée est NULL.



Instruction de cas SQL

Voici la syntaxe de l'instruction CASE en SQL :



Expression CAS
QUAND valeur_1 ALORS résultat_1
QUAND valeur_2 ALORS résultat_2
...
SINON résultat_par défaut
FIN


Considérez l'exemple suivant :





créer des élèves de table (
identifiant int auto_increment clé primaire non nulle,
nom varchar ( cinquante ) ,
science_score entier non nul,
math_score entier non nul,
history_score entier non nul,
autre entier non nul
) ;
INSÉRER DANS les élèves ( nom, science_score, math_score, history_score, autre )
VALEURS
( 'John Doe' , 80 , 70 , 90 , 85 ) ,
( 'Jane Smith' , 95 , 85 , 80 , 92 ) ,
( 'Tom Wilson' , 70 , 75 , 85 , 80 ) ,
( 'Sara Lee' , 88 , 92 , 90 , 85 ) ,
( 'Mike Johnson' , 75 , 80 , 72 , 68 ) ,
( 'Emily Chen' , 92 , 88 , 90 , 95 ) ,
( 'Chris Brown' , 85 , 80 , 90 , 88 ) ,
( 'Lisa Kim' , 90 , 85 , 87 , 92 ) ,
( 'Mark Davis' , 72 , 68 , 75 , 80 ) ,
( 'Ava Lee' , 90 , 95 , 92 , 88 ) ;


Par exemple, nous pouvons utiliser l'instruction CASE pour évaluer les différentes options et renvoyer une action spécifique, comme illustré dans l'exemple suivant :

SÉLECTIONNER
nom,
science_score,
math_score,
historique_score,
autre,
CAS
QUAND ( science_score + math_score + history_score + autre ) / 4 > = 90 ALORS 'UN'
QUAND ( science_score + math_score + history_score + autre ) / 4 > = 80 ALORS 'B'
QUAND ( science_score + math_score + history_score + autre ) / 4 > = 70 ALORS 'C'
QUAND ( science_score + math_score + history_score + autre ) / 4 > = 60 ALORS 'D'
AUTRE 'F'
FIN COMME 'Grade'
DES étudiants;


Sortie résultante :



Instruction de cas SQL lorsque la valeur est nulle

Nous pouvons utiliser l'instruction CASE pour exécuter un bloc de code lorsqu'il s'agit de valeurs nulles. De plus, nous pouvons utiliser les opérateurs IS NULL et IS NOT Null pour évaluer les valeurs NULL et effectuer une action spécifique en fonction de la valeur renvoyée.

Considérez l'exemple de syntaxe suivant :

SÉLECTIONNER
CAS
QUAND nom_colonne EST NULL ALORS 'La valeur est nulle'
AUTRE 'La valeur n'est pas nulle'
FIN COMME résultat
FROM nom_table ;


Dans ce cas, nous vérifions si la valeur du nom_colonne fourni est nulle. Si vrai, nous renvoyons la « Valeur est nulle ». chaîne. Sinon, si la valeur n'est pas nulle, nous renvoyons la « valeur n'est pas nulle ». chaîne.

Nous utilisons également le mot-clé AS comme alias pour la chaîne de résultat.

Considérez l'exemple de tableau suivant :

INSÉRER DANS les élèves ( nom, science_score, math_score, history_score, autre, temp )
VALEURS
( 'John Doe' , 80 , 70 , 90 , 85 , nul ) ,
( 'Jane Smith' , 95 , 85 , 80 , 92 , nul ) ,
( 'Tom Wilson' , 70 , 75 , 85 , 80 , 't' ) ,
( 'Sara Lee' , 88 , 92 , 90 , 85 , 's' ) ,
( 'Mike Johnson' , 75 , 80 , 72 , 68 , nul ) ,
( 'Emily Chen' , 92 , 88 , 90 , 95 , nul ) ,
( 'Chris Brown' , 85 , 80 , 90 , 88 , 'nul' ) ,
( 'Lisa Kim' , 90 , 85 , 87 , 92 , '' ) ,
( 'Mark Davis' , 72 , 68 , 75 , 80 , nul ) ,
( 'Ava Lee' , 90 , 95 , 92 , 88 , 'un' ) ;


Nous pouvons ensuite imprimer un message spécifique pour les valeurs nulles à l'aide de l'instruction CASE.

sélectionner nom, temp,
CAS
QUAND temp EST NULL ALORS 'La valeur est nulle'
AUTRE 'La valeur n'est pas nulle'
FIN COMME résultat
DES étudiants s ;


Sortir:

Conclusion

Nous avons appris à utiliser l'instruction SQL CASE pour évaluer une condition spécifique et effectuer une tâche requise en fonction de la valeur résultante.