+-
MySQL相当于Oracle中的DECODE函数
我试图在 MySQL中找到相当于DECODE的函数.它的工作原理如下:

Select Name, DECODE(Age,
       13,'Thirteen',14,'Fourteen',15,'Fifteen',16,'Sixteen',
       17,'Seventeen',18,'Eighteen',19,'Nineteen',
       'Adult') AS AgeBracket
FROM Person

DECODE函数将比较’Age’列的值与13,14,15 ..并返回适当的字符串值’Thirteen’,’Fourteen’..如果它与没有匹配,则返回默认值’Adult’ .

任何在MySQL中运行的想法都可以完成这项工作吗?谢谢.

澄清:我同意使用CASE是实现预期结果的一种方法,但我更倾向于寻找功能,因为性能和其他原因.

最佳答案
您可以使用IF()在Oracle中使用DECODE().

mysql> select if(emp_id=1,'X','Y') as test, emp_id from emps; 
点击查看更多相关文章

转载注明原文:MySQL相当于Oracle中的DECODE函数 - 乐贴网