SQL COALESCE Function et NULL

savoir quand utiliser la fonction SQL COALESCE est une bouée de sauvetage lorsque vous avez affaire à NULL.

comme vous le savez, NULL est un concept délicat, et il semble que ce que NULL « touche” dans une expression, il rend le résultat nul. Donc, quand vous avez affaire à NULL, Comment Pouvez-vous sortir du cycle? Autrement dit, Comment Pouvez-vous afficher une autre valeur à la place?

C’est là que SQL COALESCE entre en jeu. Avec cette fonction, vous pouvez tester NULL et, lorsqu’il est présent, remplacer NULL par une autre valeur.

QU’est-ce que COALESCE?,

COALESCE est une fonction SQLServer intégrée. Utilisez COALESCE lorsque vous devez remplacer un NULL par une autre valeur. Il prend la forme:

COALESCE(value1, value2, ..., valuen)

il renvoie le premier non NULL de la liste des valeurs.

considérez les parcs de baseball de la base de données Lahmans Baseball., Si nous voulons afficher le parkname en place de la parkalias, qui peut être null, FUSIONNENT fonctionne bien ici:

SÉLECTIONNEZ FUSIONNER(parkalias, parkname) comme ParkAlias, ville, stateFROM Parcs
-- AnswerSELECT COALESCE(parkalias, parkname) as ParkAlias, city, stateFROM Parks

Dans cet exemple FUSIONNENT(parkalias, parkname) renvoie la valeur trouvée dans parkalias si la valeur n’est pas NULL; toutefois, si elle est NULLE, alors parkname est retourné.

quel SQL écririez-vous si vous vouliez afficher ‘Unknown’ si le parkalias est NULL?, Pourquoi ne pas essayer d’écrire la requête here voici un début<

comparant SQL COALESCE à CASE

saviez-vous que SQL COALESCE est un raccourci pour L’instruction CASE?

considérez l’enquête de table, qui a les colonnes answerID, option1, option2, option3.

nous voulons lister l’answerID et la première option non nulle.

D’après ce que nous avons appris, nous pouvons utiliser COALESCE comme:

SELECT answerID,
COALESCE(option1, option2, option3, 'No Option Selected')
FROM survey

ceci est un raccourci pour cette instruction CASE:

SELECT answerID,
CASE
WHEN option1 is not NULL then option1
WHEN option2 is not NULL then option2
WHEN option3 is not NULL then option3
ELSE 'No Option Selected'
END
FROM survey

CASE est utilisé dans plus de circonstances, mais lors du remplacement de NULL, COALESCE est un raccourci pratique!,

Pour mémoire, SQL Server a beaucoup plus de fonctions intéressantes à apprendre et à explorer. Si vous ne l’avez pas déjà fait, consultez ces fonctions de chaîne pour manipuler les données de texte!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Aller à la barre d’outils