mysql實現(xiàn)if語句判斷功能的6種使用形式小結(jié)
前言
在Mysql數(shù)據(jù)庫中實現(xiàn)判斷功能有很多方式,具體又分為函數(shù)和if語句形式,函數(shù)的好處是可以作為sql的一部分來運行,而if語句則需要在存儲過程中使用。
一、ifnull函數(shù)
語法:
IFNULL(expression, alt_value)
解釋:
判斷第一個表達(dá)式是否為 NULL,如果為 NULL 則返回第二個參數(shù)的值,如果不為 NULL 則返回第一個參數(shù)的值
參數(shù)說明:
Expression:必須,要測試的值
alt_value:必須,expression 表達(dá)式為 NULL 時返回的值。
常用示例:
expression_1參數(shù)為空,返回a
SELECT IFNULL(NULL, 'a');
expression_1參數(shù)不為空,返回1
SELECT IFNULL(1, 'a');
空字符串也表示有值,返回空字符串
SELECT IFNULL('', 'a');
0也表示有值,返回0
SELECT IFNULL(0, 'a');
二、nullif函數(shù)
語法:
NULLIF(expression1, expression2)
解釋:
NULLIF()函數(shù)用于比較兩個表達(dá)式。如果兩個表達(dá)式相等,則NULLIF()函數(shù)將返回NULL,否則它將返回第一個表達(dá)式。
常用示例:
兩個表達(dá)式相等,返回null
SELECT NULLIF('abc', 'abc');
兩個表達(dá)式不等,返回第一個表達(dá)式abc
SELECT NULLIF('abc', 'abcd');
三、if函數(shù)
語法:
IF(expr1,expr2,expr3)
解釋:
如果表達(dá)式expr1=true(expr1 <> 0 and expr1 <> NULL),返回expr2,否則返回expr3,IF() 的返回值為數(shù)字值或字符串值,具體情況視其所在語境而定。
常用示例:
expr1參數(shù)為1,結(jié)果為真,返回正確
select if(1,'正確','錯誤');
四、if語句(多用于存儲過程)
語法:
IF expression THEN statements; END IF;
解釋:
如果表達(dá)式求值為TRUE,則將執(zhí)行語句,否則,控件將傳遞給后面的下一個語句。
五、if-else語句(多用于存儲過程)
語法:
IF expression THEN statements; ELSE else-statements; END IF;
解釋:
如果表達(dá)式求值為TRUE,則將執(zhí)行statements語句,否則,執(zhí)行else-statements語句。
六、if-elseif-else語句(多用于存儲過程)
語法:
IF expression THEN statements; ELSEIF elseif-expression THEN elseif-statements; ... ELSE else-statements; END IF;
解釋:
如果表達(dá)式(expression)求值為TRUE,則IF分支中的語句(statements)將執(zhí)行;如果表達(dá)式求值為FALSE,則如果elseif_expression的計算結(jié)果為TRUE,MySQL將執(zhí)行elseif-expression,否則執(zhí)行ELSE分支中的else-statements語句。
總結(jié)
到此這篇關(guān)于mysql實現(xiàn)if語句判斷功能的6種使用形式的文章就介紹到這了,更多相關(guān)mysql if語句判斷功能內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入分析mysql為什么不推薦使用uuid或者雪花id作為主鍵
這篇文章主要介紹了深入分析mysql為什么不推薦使用uuid或者雪花id作為主鍵,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09詳解Windows?Server?2012下安裝MYSQL5.7.24的問題
這篇文章主要介紹了Windows?Server?2012下安裝MYSQL5.7.24的詳細(xì)過程,本文通過圖文并茂實例代碼相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-02-02Windows10下MySQL5.7.19安裝教程 MySQL忘記root密碼修改方法
這篇文章主要為大家詳細(xì)介紹了Windows10下MySQL5.7.19安裝教程,以及MySQL忘記root密碼的修改方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10使用xshell實現(xiàn)代理功能并navicat?for?MySQL?進(jìn)行測試
本文介紹使用xshell實現(xiàn)代理功能并使用navicat?for?MySQL進(jìn)行測試,文章主要利用SSH連接工具xshell就可以實現(xiàn)簡單的代理功能,下面實現(xiàn)過程,需要的小伙伴可以參考一下2022-02-02mysql ONLY_FULL_GROUP_BY設(shè)置sql_mode無效排查問題(windows)
這篇文章主要介紹了mysql ONLY_FULL_GROUP_BY設(shè)置sql_mode無效排查問題(windows),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-09-09MySQL初級入門篇之視圖的相關(guān)概念及應(yīng)用實例
Mysql中的視圖其實是一個虛擬表,使用時動態(tài)檢索查詢數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于MySQL初級入門篇之視圖的相關(guān)概念及應(yīng)用實例的相關(guān)資料,需要的朋友可以參考下2022-04-04MySQL多表關(guān)聯(lián)on和where速度對比實測看誰更快
這篇文章主要介紹了MySQL多表關(guān)聯(lián)on和where速度對比實測看誰更快問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03