MYSQL-ORCALE decode函数在MYSQL中的实现
来源:互联网 发布:淘宝代销怎么发货 编辑:程序博客网 时间:2024/06/07 10:50
一、select ifnull(etl(filed(col,...))) ;
mysql中实现oracle的decode函数需要用到三个函数:
(1)ELT(N,str1,str2,str3,...)
若N = 1,则返回值为 str1 ,若N = 2,则返回值为 str2 ,以此类推。 若N 小于1或大于参数的数目,则返回值为 NULL 。 ELT() 是 FIELD()的补数。(2)FIELD(str,str1,str2,str3,...)
返回值为str1, str2, str3,……列表中的str 指数。在找不到str 的情况下,返回值为 0 。
如果所有对于FIELD() 的参数均为字符串,则所有参数均按照字符串进行比较。如果所有的参数均为数字,则按照数字进行比较。否则,参数按照双倍进行比较。
如果str 为NULL,则返回值为0 ,原因是NULL不能同任何值进行同等比较。FIELD() 是ELT()的补数。
NULL,则返回值为0 ,原因是NULL不能同任何值进行同等比较。FIELD() 是ELT()的补数。
(3)IFNULL(expr1,expr2)
假如expr1 不为 NULL,则 IFNULL() 的返回值为 expr1; 否则其返回值为 expr2。IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境
Select IFNULL(ELT(FIELD(17 ,13, 14, 15, 16, 17, 18, 19) ,'Thirteen','Fourteen','Fifteen','Sixteen','Seventeen','Eighteen','Nineteen') ,'Adult') str ;Seventeen
Select Name, case when Age = 13 then 'Thirteen' when Age = 14 then 'Fourteen' when Age = 15 then 'Fifteen' when Age = 16 then 'Sixteen' when Age = 17 then 'Seventeen' when Age = 18 then 'Eighteen' when Age = 19 then 'Nineteen' else 'Adult'end as AgeBracketFROM Person
0 0
- MYSQL-ORCALE decode函数在MYSQL中的实现
- MYSQL实现ORACLE中的decode()函数
- 在MYsql中实现oracle中的DECODE
- Orcale中的decode函数用法
- mysql 的 decode 函数实现
- Mysql decode()函数的实现
- mysql中的decode等价实现
- mysql中的decode等价实现 【转】
- MySQL实现类似Oracle中的decode()函数的功能见解 乐杨俊
- mysql与orcale实现递归查询
- mysql 如何实现oracle中decode(...)函数的功能
- mysql中的decode(转)
- mysql decode()
- oracle数据库中decode函数与 mysql中的if函数和case函数
- Orcale转Mysql参考标准
- Mysql和Orcale的区别
- 关于分组序号在MySQL中的实现
- 关于分组序号在MySQL中的实现
- IAR Error Pe706
- 阿里中间件——diamond
- 时间戳转为日期格式
- 如何设置apache的并发数量
- ConfigParser模块教程
- MYSQL-ORCALE decode函数在MYSQL中的实现
- Android多线程之Handler
- Service之onStartCommand()
- 机器视觉-相机
- TextView行间距设置
- JS -- 截取数组
- (ros/qt报错) FATAL: ROS_MASTER_URI is not defined in the environment
- 自学PHP 笔记整理
- MySql中Lock命令和unlock命令