MySQL 中可以使用 CASE WHEN 语句替代 Oracle 中的 decode 函数。
例如,Oracle 中的 decode 函数语法为:
decode(expression, search_value_1, result_1, search_value_2, result_2, ..., default_result)
可以使用 MySQL 的 CASE WHEN 语句来实现类似的功能,语法如下:
CASE expressionWHEN search_value_1 THEN result_1WHEN search_value_2 THEN result_2...ELSE default_result
END
具体示例:
-- Oracle
SELECT decode(status, 1, 'active', 2, 'inactive', 'unknown') AS status_desc
FROM employees;-- MySQL
SELECT CASE statusWHEN 1 THEN 'active'WHEN 2 THEN 'inactive'ELSE 'unknown'END AS status_desc
FROM employees;