您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么使用MySQL的IFNULL()、ISNULL()和NULLIF()函數(shù)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“怎么使用MySQL的IFNULL()、ISNULL()和NULLIF()函數(shù)”吧!
一、IFNULL用法
1.1 IFNULL(expr1,expr2)用法
假如expr1不為NULL,則 IFNULL() 的返回值為expr1; 否則其返回值為 expr2。IFNULL()的返回值是數(shù)字或是字符串,具體情況取決于其所使用的語境。
mysql> SELECT IFNULL(1,0);
-> 1
mysql> SELECT IFNULL(NULL,10);
-> 10
mysql> SELECT IFNULL(1/0,10);
-> 10
mysql> SELECT IFNULL(1/0,'yes');
-> 'yes'
IFNULL(expr1,expr2)的默認結(jié)果值為兩個表達式中更加“通用”的一個,順序為STRING、REAL或 INTEGER。
1.2 isnull(expr) 的用法:
如expr 為null,那么isnull() 的返回值為 1,否則返回值為 0。
mysql> select isnull(1+1);
-> 0
mysql> select isnull(1/0);
-> 1
使用= 的null 值對比通常是錯誤的。
isnull() 函數(shù)同 is null比較操作符具有一些相同的特性。請參見有關(guān)is null 的說明。
二、ISNULL(expr) 的用法
如expr 為null,那么isnull() 的返回值為 1,否則返回值為 0。
mysql> select isnull(1+1);
-> 0
mysql> select isnull(1/0);
-> 1
使用= 的null 值對比通常是錯誤的。
三、NULLIF(expr1,expr2)用法
如果expr1 = expr2 成立,那么返回值為NULL,否則返回值為expr1。這和CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END相同。
mysql> SELECT NULLIF(1,1);
-> NULL
mysql> SELECT NULLIF(1,2);
-> 1
如果參數(shù)不相等,則 MySQL 兩次求得的值為 expr1。
到此,相信大家對“怎么使用MySQL的IFNULL()、ISNULL()和NULLIF()函數(shù)”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。