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

