
网络资料附表: oracle 常用函数 与mysql 的对照表
发布日期:2021-05-20 09:14:41
浏览次数:28
分类:精选文章
本文共 3241 字,大约阅读时间需要 10 分钟。
Oracle 和 MySQL 函数对照表
以下是 Oracle 和 MySQL 常用函数的对照表,主要是针对数据处理、数学运算、日期时间操作等功能进行比较。
1. 数值函数
-
绝对值
Oracle:select abs(-1) value from dual
MySQL:select abs(-1) value
-
取整(大)
Oracle:select ceil(-1.001) value from dual
MySQL:select ceiling(-1.001) value
-
取整(小)
Oracle:select floor(-1.001) value from dual
MySQL:select floor(-1.001) value
-
取整(截取)
Oracle:select trunc(-1.002) value from dual
MySQL:select cast(-1.002 as int) value
-
四舍五入
Oracle:select round(1.23456,4) value from dual
MySQL:select round(1.23456,4) value
-
e 为底的幂
Oracle:select exp(1) value from dual
MySQL:select exp(1) value
-
e 为底的对数
Oracle:select ln(2.7182818284590451) value from dual
MySQL:select log(2.7182818284590451) value
-
取 10 为底对数
Oracle:select log(10,10) value from dual
MySQL:select log10(10) value
-
平方
Oracle:select power(4,2) value from dual
MySQL:select square(4) value
-
平方根
Oracle:select sqrt(4) value from dual
MySQL:select sqrt(4) value
-
任意数为底的幂
Oracle:select power(3,4) value from dual
MySQL:select power(3,4) value
-
取随机数
Oracle:select sys.dbms_random.value(0,1) value from dual
MySQL:select rand() value
-
取符号
Oracle:select sign(-8) value from dual
MySQL:select sign(-8) value
2. 字符串函数
-
连接字符串
Oracle:select concat('11','22','33') value from dual
MySQL:select '11'+'22'+'33' value
-
子串位置
Oracle:select instr('sdsq','s',2) value from dual
MySQL:select charindex('s','sdsq',2) value
-
模糊子串位置
Oracle:select instr('sdsfasdqe','sd',1,2) value from dual
MySQL:select patindex('%d%q%','sdsfasdqe') value
-
子串代替
Oracle:select replace('abcdef','bcd','ijklmn') value from dual
MySQL:select stuff('abcdef',2,3,'ijklmn') value
-
子串全部替换
Oracle:select translate('fasdbfasegas','fa',' 我 ') value from dual
MySQL: 未发现对应函数 -
长度
Oracle:select length('abcd') value
MySQL:select len('abcd') value
-
大小写转换
Oracle:select lower('AbcD') value
MySQL:select lower('AbcD') value
-
左补空格
Oracle:select lpad('abcd',14) value from dual
MySQL:select space(10)+'abcd' value
-
右补空格
Oracle:select rpad('abcd',14) value from dual
MySQL:'abcd'+select space(10) value
-
删除空格
Oracle:select trim(' abc ') value
MySQL:select trim(' abc ') value
-
重复字符串
Oracle: 未发现对应函数 MySQL:select repeat('abcd',2) value
3. 日期时间函数
-
系统时间
Oracle:select sysdate value from dual
MySQL:select getdate() value
-
日期时间的其他部分
Oracle: 使用to_char
函数 MySQL: 使用DATEPART
和DATENAME
函数 -
日期与时间的格式化
Oracle:to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') value
MySQL:select date_format(sysdate,'%y-%m-%d %h-%i-%s') value
-
日期与时间的加减
Oracle:select sysdate+8/60/24 value from dual
MySQL:select dateadd(mi,8,getdate()) value
-
不同时区时间
Oracle:select new_time(sysdate,'ydt','gmt') value from dual
MySQL: 未发现对应函数
4. 特殊函数对比
-
求集合最大值
Oracle:select greatest(1,-2,4,3) value from dual
MySQL:select max(value) value from (select 1 union select -2 union ... ) a
-
求集合最小值
Oracle:select least(1,-2,4,3) value from dual
MySQL:select min(value) value from (select 1 union select -2 union ... ) a
-
处理 null 值
Oracle:select nvl(F2,10) value from Tbl
MySQL:select ifnull(F2,10) value from Tbl
-
字符序号与从序号求字符
Oracle:select ascii('a') value
MySQL:select char(97) value
5. 其他常用函数
- 发音相似性比较 Oracle:
select soundex('Smith'), soundex('Smythe')
MySQL:select difference('Smithers', 'Smythers')
以上对照表主要针对 Oracle 和 MySQL 的常用函数进行了对比,具体功能和使用方式可能会存在细微差异。如有更详细的需求,建议参考两家数据库的官方文档。
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月27日 14时32分38秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
ModuleNotFoundError: No module named ‘_bz2‘
2025-04-14
ModuleNotFoundError: No module named ‘_lzma‘
2025-04-14
ModuleNotFoundError:没有名为“versioneer“的模块
2025-04-14
ModuleNotFoundError:Spyder中没有名为Pip&39;的模块
2025-04-14
Module加载
2025-04-14
MogoTemplate基本入门(Mongodb数据库基本增删改查)
2025-04-14
Mojarra JSF ViewState 反序列化漏洞复现
2025-04-14
My new English
2025-04-14
Mojo:比 Python 快 35000 倍的编程语言诞生!
2025-04-14
MolecularNotes 开源项目教程
2025-04-14
MolGAN网络架构:用于小分子图的隐式生成模型
2025-04-14
Moment.js
2025-04-14
moment.js常见格式化处理各种时间方法
2025-04-14
Moment.js常见用法总结
2025-04-14
moment时间处理相关小结
2025-04-14
mongo - 正常关闭服务
2025-04-14
mongo db 使用方法
2025-04-14