MySQL 有幾個流程控制的 functions,以下是它們的用法簡介:

1. CASE
它就如同其他程式語言的 switch:

// 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');

3. IFNULL
SELECT IFNULL(expr1, expr2);

// Return 5
SELECT IFNULL(5,0);

// Return 10
SELECT IFNULL(NULL,10);

4. NULLIF
SELECT NULLIF(expr1,expr2);

// Return NULL
SELECT NULLIF(5,5);

// Return 10
SELECT NULLIF(10,4);