将Oracle的decode函数转换为MySQL语法
时间: 2024-05-13 15:18:00 浏览: 89
在Oracle中,DECODE函数的语法如下:
```
DECODE(expr, search1, result1, search2, result2, ..., default)
```
其中,`expr`是要进行比较的表达式,`search1`、`search2`等是要进行比较的值,`result1`、`result2`等是对应的返回结果,`default`是可选的默认返回结果。
在MySQL中,可以使用CASE语句来模拟DECODE函数的功能。下面是DECODE函数在MySQL中的语法转换:
```
CASE expr
WHEN search1 THEN result1
WHEN search2 THEN result2
...
ELSE default
END
```
因此,你可以将DECODE函数转换为MySQL语法,例如:
```
SELECT DECODE(column1, 'value1', 'result1', 'value2', 'result2', 'default') AS new_column
FROM table1;
```
可以转换为:
```
SELECT
CASE column1
WHEN 'value1' THEN 'result1'
WHEN 'value2' THEN 'result2'
ELSE 'default'
END AS new_column
FROM table1;
```
注意,在MySQL中,CASE语句是一个表达式,因此需要使用AS关键字为结果列命名。
阅读全文