ホームページ > データベース > mysql チュートリアル > mysql_Mysql の null を置き換える IFNULL() 関数と COALESCE() 関数の詳細な説明

mysql_Mysql の null を置き換える IFNULL() 関数と COALESCE() 関数の詳細な説明

微波
リリース: 2017-06-28 15:44:50
オリジナル
2310 人が閲覧しました

この記事では、nullを置き換えるmysqlのIFNULL()とCOALESCE()の関連情報をサンプルコードを通して詳しく紹介していますので、参考になると思います。学習の価値をすべての人に。困っている友人の皆さん、ぜひ下記をご覧ください。

MySQL では、isnull() 関数を null 値の置換として使用することはできません。

isnull()函数不能作为替代null值!

如下:

首先有个名字为business的表:


SELECT ISNULL(business_name,'no business_name') AS bus_isnull FROM business WHERE id=2
ログイン後にコピー

直接运行就会报错:

错误代码: 1582

Incorrect parameter count in the call to native function 'isnull'
ログイン後にコピー

所以,isnull()函数在mysql中就行不通了。可以用ifnull()coalesce()代替。如下:

使用ifnull()函数:

SELECT IFNULL(business_name,'no business_name') AS bus_ifnull FROM business WHERE id=2
ログイン後にコピー

运行结果:


查询的值不为null时:

SELECT IFNULL(business_name,'no business_name') AS bus_ifnull FROM business WHERE id=1
ログイン後にコピー

结果如下:


使用coalesce()函数:

SELECT COALESCE(business_name,'no business_name') AS bus_coalesce FROM business WHERE id=2
ログイン後にコピー

结果如下:


当查询值不为null时:

SELECT COALESCE(business_name,'no business_name') AS bus_coalesce FROM business WHERE id=1
ログイン後にコピー


其中:coalesce()还可以返回第一个不为null的值。如下:

SELECT COALESCE(business_name,district_id,id) AS bus_coalesce FROM business WHERE id=2
ログイン後にコピー


那么,isnull()在mysql中怎么用呢?答案就是用在where后面。如下:

SELECT * FROM business WHERE ISNULL(business_name)
ログイン後にコピー

结果如下:


同样,is null is not null

は次のとおりです:


まず、business という名前のテーブルがあります:

SELECT * FROM business WHERE business_name IS NULL
ログイン後にコピー

直接実行すると、エラーが報告されます: エラー コード: 1582

SELECT * FROM business WHERE business_name IS NOT NULL
ログイン後にコピー
したがって、 は null( ) 関数は mysql にありますが、機能しません。代わりに ifnull()coalesce() を使用できます。次のように: 🎜🎜 ifnull() 関数を使用します: 🎜rrreee🎜 実行結果: 🎜🎜🎜🎜🎜🎜query 🎜の値がnull以外の場合: 🎜rrreee🎜結果は以下の通り: 🎜🎜🎜🎜🎜🎜coalesce() 関数を使用します: 🎜rrreee🎜結果は次のとおりです: 🎜🎜🎜 🎜🎜🎜クエリ値が null でない場合: 🎜rrreee🎜🎜🎜🎜🎜🎜そのうち: coalesce() は最初の値を返すこともできますnull ではない値。以下の通り: 🎜rrreee🎜🎜🎜🎜🎜🎜その後、 isnull()mysql で使用するにはどうすればよいですか?答えは、where の後に使用することです。以下の通り: 🎜rrreee🎜結果は以下の通り: 🎜🎜🎜🎜🎜 🎜同様に、 is null is not null も where の後に使用されます。 🎜rrreee🎜結果は以下の通りです: 🎜🎜🎜🎜🎜rrreee🎜🎜🎜🎜🎜🎜まとめ🎜🎜🎜

以上がmysql_Mysql の null を置き換える IFNULL() 関数と COALESCE() 関数の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート