Maison >base de données >tutoriel mysql >Explication détaillée des fonctions IFNULL() et COALESCE() qui remplacent null dans MySQL

Explication détaillée des fonctions IFNULL() et COALESCE() qui remplacent null dans MySQL

黄舟
黄舟original
2017-06-18 10:52:341804parcourir

Cet article vous présente principalement les fonctions IFNULL() et COALESCE() dans mysql qui remplace null Les informations pertinentes est présenté en détail à travers des exemples de codes dans l'article, qui a une certaine valeur de référence et d'apprentissage pour tous les amis qui en ont besoin peuvent y jeter un œil ci-dessous.

Dans MySQL, la fonction isnull() ne peut pas être utilisée en remplacement des valeurs nulles !

est le suivant :

Il y a d'abord une table nommée business :


SELECT ISNULL(business_name,'no business_name') AS bus_isnull FROM business WHERE id=2

Si vous l'exécutez directement, une erreur sera signalée :

Code d'erreur : 1582


Incorrect parameter count in the call to native function 'isnull'

Donc, isnull()La fonction ne fonctionnera pas dans MySQL. Vous pouvez utiliser ifnull() et coalesce() à la place. Comme suit :

Utilisez la fonction ifnull() :


SELECT IFNULL(business_name,'no business_name') AS bus_ifnull FROM business WHERE id=2

Résultat en cours d'exécution :


Lorsque interroge la valeur de n'est pas nulle :


SELECT IFNULL(business_name,'no business_name') AS bus_ifnull FROM business WHERE id=1

Le résultat est le suivant :


Utilisez la fonction coalesce() :


SELECT COALESCE(business_name,'no business_name') AS bus_coalesce FROM business WHERE id=2

Le résultat est le suivant suit :


Lorsque la valeur de la requête n'est pas nulle :


SELECT COALESCE(business_name,'no business_name') AS bus_coalesce FROM business WHERE id=1

where :coalesce()Vous pouvez également renvoyer la première valeur qui n'est pas nulle. Comme suit :


SELECT COALESCE(business_name,district_id,id) AS bus_coalesce FROM business WHERE id=2

Alors, comment utiliser isnull() dans MySQL ? La réponse est de l'utiliser après où. Comme suit :


SELECT * FROM business WHERE ISNULL(business_name)

Le résultat est le suivant :


De même, is null et is not null sont également utilisés après où.


SELECT * FROM business WHERE business_name IS NULL

Les résultats sont les suivants :


SELECT * FROM business WHERE business_name IS NOT NULL

Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn