mysql中的流程控制語句小結
阿新 • • 發佈:2019-02-03
mysql中有如下的幾個的控制流程的語句:
1) case
// Below will return zero
SELECT CASE 0 WHEN 0 THEN 'zero' WHEN 1 THEN 'one' ELSE 'no one' END;
// Below will return true
SELECT CASE WHEN 5>2 THEN 'true' ELSE 'false' END;
2)if 語句
SELECT IF(expr1,expr2,expr3);
// return yes
SELECT IF(1<5,'yes','no');
有三個引數,如果第1個表示式返回true,則返回表示式2,否則返回表示式3
3) ifnull
SELECT IFNULL(expr1, expr2);
如果 expr1不為null,則返回expr1,如果expr1為null,則返回expr2
// Return 5
SELECT IFNULL(5,0);
// Return 10
SELECT IFNULL(NULL,10);
4)nullif
SELECT NULLIF(expr1,expr2);
如果表示式1=表示式2,則返回null,否則返回第1個表示式
SELECT NULLIF(expr1,expr2);
// Return NULL
SELECT NULLIF(5,5);
// Return 10
SELECT NULLIF(10,4);
1) case
// Below will return zero
SELECT CASE 0 WHEN 0 THEN 'zero' WHEN 1 THEN 'one' ELSE 'no one' END;
// Below will return true
SELECT CASE WHEN 5>2 THEN 'true' ELSE 'false' END;
2)if 語句
SELECT IF(expr1,expr2,expr3);
// return yes
SELECT IF(1<5,'yes','no');
有三個引數,如果第1個表示式返回true,則返回表示式2,否則返回表示式3
3) ifnull
SELECT IFNULL(expr1, expr2);
如果 expr1不為null,則返回expr1,如果expr1為null,則返回expr2
// Return 5
SELECT IFNULL(5,0);
// Return 10
SELECT IFNULL(NULL,10);
4)nullif
SELECT NULLIF(expr1,expr2);
如果表示式1=表示式2,則返回null,否則返回第1個表示式
SELECT NULLIF(expr1,expr2);
// Return NULL
SELECT NULLIF(5,5);
// Return 10
SELECT NULLIF(10,4);