CASE expression
WHEN condition1 THEN result1
[WHEN condition2 THEN result2]
...
[WHEN conditionN THEN resultN]
[ELSE result]
END
OR
CASE WHEN condition1 THEN result1
[WHEN condition2 THEN result2]
...
[WHEN conditionN THEN resultN]
[ELSE result]
END
Compare the expression with multiple possible values, and return the corresponding results when matching
mysql> select user_id, case user_id when 1 then 'user_id = 1' when 2 then 'user_id = 2' else 'user_id not exist' end test_case from test; +---------+-------------+ | user_id | test_case | +---------+-------------+ | 1 | user_id = 1 | | 2 | user_id = 2 | +---------+-------------+ mysql> select user_id, case when user_id = 1 then 'user_id = 1' when user_id = 2 then 'user_id = 2' else 'user_id not exist' end test_case from test; +---------+-------------+ | user_id | test_case | +---------+-------------+ | 1 | user_id = 1 | | 2 | user_id = 2 | +---------+-------------+
CASE