mysql函式之控制流程函式

2021-05-27 03:19:32 字數 883 閱讀 8887

1、函式:

case value when [compare-value] then result [when [compare-value] thenresult ...] [else result] end case when [condition] thenresult [when [condition] then result ...] [else result] end

在第乙個方案的返回結果中, value=compare-value。而第二個方案的返回結果是第一種情況的真實結果。如果沒有匹配的結果值,則返回結果為else後的結果,如果沒有else部分,則返回值為 null。

格式:select case ...

2、函式:if(expr1,expr2,expr3)

如果 expr1 是true (expr1

<> 0 andexpr1

<> null),則 if()的返回值為expr2;否則返回值則為 expr3。if() 的返回值為數字值或字串值,具體情況視其所在語境而定。

3、函式:ifnull(expr1,expr2)

假如expr1 不為 null,則 ifnull()的返回值為 expr1; 否則其返回值為 expr2。ifnull()的返回值是數字或是字串,具體情況取決於其所使用的語境。

ifnull(expr1,expr2)的預設結果值為兩個表示式中更加「通用」的乙個,順序為string、 real或 integer。

4、nullif(expr1,expr2)

如果expr1 = expr2  成立,那麼返回值為null,否則返回值為expr1。這和case when expr1 = expr2 then null elseexpr1 end相同。

mysql控制流程函式

假設有乙個表table,其中欄位有getmoney收入 select if getmoney 100000,getmoney,收入太高不記 from table 作用是得到乙個結果集,其中只有乙個字段,該欄位名字為if getmoney 100000,getmoney,收入太高不記 這個名字不太好記...

mySql控制流程的函式

1.select case value then result else value end 在第乙個方案的返回結果中,value compare value。而第二個方案的返回結果是第一種情況的真實結果。如果沒有匹配的結果值,則返回結果為else後的結果,如果沒有else 部分,則返回值為 nul...

MYSQL 流程控制函式

if函式 條件,返回值1,返回值2 select if 10 5,大 小 select last name,commission pct,if commission pct is null,不存在 有 別名 from employee case函式 等值 1.case 要判斷的變數或表示式 when...