MySQL該如何判斷不為空詳析
一、前言
MySQL 中可以使用IFNULL函數(shù)判斷一個(gè)值是否不為空。
MySQL IFNULL 函數(shù)是 MySQL 控制流函數(shù)之一,它接受兩個(gè)參數(shù),如果不是 NULL,則返回第一個(gè)參數(shù)。 否則,IFNULL 函數(shù)返回第二個(gè)參數(shù)。兩個(gè)參數(shù)可以是文字值或表達(dá)式。
二、使用步驟
1、函數(shù)的語法:
其中:如果 v1 不為 NULL,則 IFNULL 函數(shù)返回 v1; 否則返回 v2 的結(jié)果。
IFNULL(v1,v2);
2、實(shí)例
第一個(gè)參數(shù)為 NULL:
SELECT IFNULL(NULL, "RUNOOB");
以上實(shí)例輸出結(jié)果為:
RUNOOB
第一個(gè)參數(shù)不為 NULL:
SELECT IFNULL("Hello", "RUNOOB");
以上實(shí)例輸出結(jié)果為:
Hello
3、查詢字段結(jié)果為空則返回另一個(gè)字段
補(bǔ)充知識(shí):MySQL判斷字符串為NULL或者為空字符串
函數(shù)名 | 說明 |
---|---|
ISNULL(expr) | 如果expr為null返回值1,否則返回值為0 |
IFNULL(expr1,expr2) | 如果expr1值為null返回expr2的值,否則返回expr1的值 |
NULLIF(expr1,expr2) | 如果expr1==expr2返回值為null,否則返回expr1的值;相當(dāng)于case when expr1=expr2 then null else expr1 end |
COALESCE | 返回傳入的參數(shù)中第一個(gè)非null的值 |
IF(expr1,expr2,expr3) | 如果expr1的值為true,則返回expr2的值,否則返回expr3的值 |
例:
查找學(xué)生姓名不為null的學(xué)生信息
SELECT * FROM student WHERE ISNULL(stu_name) <1 SELECT * FROM student WHERE stu_name is not null
查詢學(xué)生成績,若score為null則返回0
SELECT IFNULL('score',0) FROM stu_score SELECT COALESCE('score',0) FROM stu_score SELECT IF(IFNULL('score',null)=null,0,score) FROM stu_score SELECT CASE WHEN score is null THEN 0 ELSE score END AS score FROM stu_score
總結(jié)
到此這篇關(guān)于MySQL該如何判斷不為空的文章就介紹到這了,更多相關(guān)MySQL判斷不為空內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySql總彈出mySqlInstallerConsole窗口的解決方法
這篇文章主要介紹了MySql總彈出mySqlInstallerConsole窗口的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-09-09Python3.6-MySql中插入文件路徑,丟失反斜杠的解決方法
下面小編就為大家?guī)硪黄狿ython3.6-MySql中插入文件路徑,丟失反斜杠的解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06MyCAT上新增一個(gè)庫及MyCAT報(bào)錯(cuò)1184的問題及解決
這篇文章主要介紹了MyCAT上新增一個(gè)庫及MyCAT報(bào)錯(cuò)1184的問題及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11