SQL(Oracle)日常使用与不常使用函数的汇总
--日常使用的sql语句和oracle语句,有些相对使用的频率比较高,收藏起来还是比较值得的-- 绝对值 SQL:select abs(-1) valueOracle:select abs(-1) value from dual-- 2.取整(大) SQL:select ceiling(-1.001) value Oracle:select ceil(-1.001) value from dual-- 3.取整(小) SQL:select floor(-1.001) value Oracle:select floor(-1.001) value from dual-- 4.取整(截取)SQL:select cast(-1.002 as int) value Oracle:select trunc(-1.002) value from dual -- 5.四舍五入SQL:select round(1.23456,4) value 1.23460Oracle:select round(1.23456,4) value from dual 1.2346-- 6.e为底的幂 SQL:select Exp(1) value 2.7182818284590451 Oracle:select Exp(1) value from dual 2.71828182-- 7.取e为底的对数SQL:select log(2.7182818284590451) value 1Oracle:select ln(2.7182818284590451) value from dual; 1 -- 8.取10为底对数SQL:select log10(10) value 1Oracle:select log(10,10) value from dual; 1-- 9.取平方SQL:select SQUARE(4) value 16Oracle:select power(4,2) value from dual 16-- 10.取平方根SQL:select SQRT(4) value 2Oracle:select SQRT(4) value from dual 2-- 11.求任意数为底的幂SQL:select power(3,4) value 81Oracle:select power(3,4) value from dual 81-- 12.取随机数SQL:select rand() value Oracle:select sys.dbms_random.value(0,1) value from dual;-- 13.取符号SQL:select sign(-8) value -1Oracle:select sign(-8) value from dual -1----------数学函数-- 14.圆周率SQL:SELECT PI() value 3.1415926535897931Oracle:不知道-- 15.sin,cos,tan 参数都以弧度为单位例如:select sin(PI()/2) value 得到1(SQLServer)16.Asin,Acos,Atan,Atan2 返回弧度-- 17.弧度角度互换(SQLServer,Oracle不知道)DEGREES:弧度-〉角度RADIANS:角度-〉弧度---------数值间比较 -- 18. 求集合最大值SQL:select max(value) value from (select 1 valueunionselect -2 valueunionselect 4 valueunionselect 3 value)aOracle:select greatest(1,-2,4,3) value from dual-- 19. 求集合最小值SQL:select min(value) value from (select 1 valueunionselect -2 valueunionselect 4 valueunionselect 3 value)aOracle:select least(1,-2,4,3) value from dual-- 20.如何处理null值(F2中的null以10代替)SQL:select F1,IsNull(F2,10) value from TblOracle:select F1,nvl(F2,10) value from Tbl --------数值间比较-- 21.求字符序号SQL:select ascii('a') valueOracle:select ascii('a') value from dual-- 22.从序号求字符SQL:select char(97) valueOracle:select chr(97) value from dual-- 23.连接SQL:select '11'+'22'+'33' valueOracle:select CONCAT('11','22')||33 value from dual-- 23.子串位置 --返回3SQL:select CHARINDEX('s','sdsq',2) value Oracle:select INSTR('sdsq','s',2) value from dual-- 23.模糊子串的位置 --返回2,参数去掉中间%则返回7SQL:select patindex('%d%q%','sdsfasdqe') value Oracle:oracle没发现,但是instr可以通过第四霾问 刂瞥鱿执问?BR> select INSTR('sdsfasdqe','sd',1,2) value from dual 返回6-- 24.求子串SQL:select substring('abcd',2,2) value Oracle:select substr('abcd',2,2) value from dual -- 25.子串代替 返回aijklmnefSQL:SELECT STUFF('abcdef', 2, 3, 'ijklmn') valueOracle:SELECT Replace('abcdef', 'bcd', 'ijklmn') value from dual-- 26.子串全部替换 SQL:没发现Oracle:select Translate('fasdbfasegas','fa','我' ) value from dual -- 27.长度SQL:len,datalengthOracle:length-- 28.大小写转换 lower,upper-- 29.单词首字母大写 SQL:没发现Oracle:select INITCAP('abcd dsaf df') value from dual -- 30.左补空格(LPAD的第一个参数为空格则同space函数)SQL:select space(10)+'abcd' valueOracle:select LPAD('abcd',14) value from dual -- 31.右补空格(RPAD的第一个参数为空格则同space函数)SQL:select 'abcd'+space(10) valueOracle:select RPAD('abcd',14) value from dual-- 32.删除空格SQL:ltrim,rtrimOracle:ltrim,rtrim,trim-- 33. 重复字符串SQL:select REPLICATE('abcd',2) value Oracle:没发现-- 34.发音相似性比较(这两个单词返回值一样,发音相同)SQL:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe')Oracle:SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe') from dual-- SQLServer中用SELECT DIFFERENCE('Smithers', 'Smythers') 比较soundex的差-- 返回0-4,4为同音,1最高--------------日期函数-- 35.系统时间SQL:select getdate() valueOracle:select sysdate value from dual-- 36.前后几日-- 直接与整数相加减 -- 37.求日期SQL:select convert(char(10),getdate(),20) valueOracle:select trunc(sysdate) value from dualselect to_char(sysdate,'yyyy-mm-dd') value from dual-- 38.求时间SQL:select convert(char(8),getdate(),108) valueOracle:select to_char(sysdate,'hh24:mm:ss') value from dual-- 39.取日期时间的其他部分SQL:DATEPART 和 DATENAME 函数 (第一个参数决定) Oracle:to_char函数 第二个参数决定--参数---------------------------------下表需要补充year yy, yyyy quarter qq, q (季度)month mm, m (m O无效)dayofyear dy, y (O表星期)day dd, d (d O无效)week wk, ww (wk O无效)weekday dw (O不清楚)Hour hh,hh12,hh24 (hh12,hh24 S无效)minute mi, n (n O无效)second ss, s (s O无效)millisecond ms (O无效)------------------------------------------------ 40.当月最后一天 SQL:不知道Oracle:select LAST_DAY(sysdate) value from dual -- 41.本星期的某一天(比如星期日) SQL:不知道Oracle:SELECT Next_day(sysdate,7) vaule FROM DUAL; -- 42.字符串转时间SQL:可以直接转或者select cast('2004-09-08'as datetime) valueOracle:SELECT To_date('2004-01-05 22:09:38','yyyy-mm-dd hh24-mi-ss') vaule FROM DUAL;-- 43.求两日期某一部分的差(比如秒)SQL:select datediff(ss,getdate(),getdate()+12.3) valueOracle:直接用两个日期相减(比如d1-d2=12.3)SELECT (d1-d2)*24*60*60 vaule FROM DUAL;-- 44.根据差值求新的日期(比如分钟)SQL:select dateadd(mi,8,getdate()) valueOracle:SELECT sysdate+8/60/24 vaule FROM DUAL;-- 45.求不同时区时间 SQL:不知道Oracle:SELECT New_time(sysdate,'ydt','gmt' ) vaule FROM DUAL;
最后还有时区的函数和转换没有记录下来,因为我还真的没有用到过。。。
等下次再补充完整
转载于:https://www.cnblogs.com/moonbo/p/4276855.html
SQL(Oracle)日常使用与不常使用函数的汇总相关推荐
- oracle 不等函数,SQL(Oracle)日常使用与不常使用函数的汇总
--日常使用的sql语句和oracle语句,有些相对使用的频率比较高,收藏起来还是比较值得的 -- 绝对值 SQL:select abs(-1) value Oracle:select abs(-1) ...
- ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)
原文:ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!) ORACLE PL/SQL编程之六: 把过程与函数说透(穷追猛打,把根儿都拔起!) 继上篇:ORACLE P ...
- 《卸甲笔记》-PostgreSQL和Oracle的SQL差异分析之三:rownum和聚合函数
PostgreSQL是世界上功能最强大的开源数据库,在国内得到了越来越多机构和开发者的青睐和应用.随着PostgreSQL的应用越来越广泛,Oracle向PostgreSQL数据库的数据迁移需求也越来 ...
- oracle报表查询sql,63.Oracle数据库SQL开发之 高级查询——使用报表函数
63.Oracle数据库SQL开发之 高级查询--使用报表函数 报表函数可用于执行跨越分组和组内分区的计算. 报表计算:SUM,AVG,MAX,MIN,COUNT,VARIANCE,STDDEV.可以 ...
- 使用wrap和unwrap加密解密Oracle的PL/SQL对象(包,存储过程,函数等)代码
使用wrap和unwrap加密解密Oracle的PL/SQL对象(包,存储过程,函数等)代码 Oracle数据库系统自带的PL/SQL对象(包,存储过程,函数等)的代码绝大部分都是使用了wrap程序加 ...
- Oracle的Cast的用法,cast函数(sql中cast函数用法)
这是一个格式转换函数.里面有两个参数:cast[要转换的数据或公式 as 转换到的数据类型] 同类函数还有convert[数据类型,要转换的数据或公式] CAST()和CONVERT()函数的区别是什 ...
- mysql中sql语句中常见的group_concat()函数意思以及用法,oracle中与其一样的功能函数是wmsys.wm_concat()
1.group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果.比较抽象,难以理解. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一 ...
- [转]SQLServer和Oracle,存储过程区别,常用函数对比
本文转自:http://www.cnblogs.com/neru/archive/2011/08/18/2144049.html 以前一直用sqlserver,只有很少的一点oracle的经验,现在要 ...
- oracle中类似indexof用法_instr函数
oracle中类似indexof用法_instr函数 [sql] 在oracle中没有indexof()函数 但是提供了一个 instr() 方法 具体用法: select instr('保定市南市区 ...
最新文章
- 迁移学习简介(transfer learning)
- 大厂 CEO 一年薪酬拿多少?
- Solr配置IK分词器
- ajax div 赋值重新渲染_30分钟全面解析图解AJAX原理
- latex中怎样写上标_LaTex:参考文献引用的方法
- Python3 基础学习笔记 C02【列表】
- python 菜鸟教程字符串反转函数_转自python的菜鸟教程---字符串相关操作
- 【Flink】Flink 1.13 Flink SQL 新特性 性能优化 时区 时间 纠正
- Magento Url重写修改
- git的基本使用和多人协作合并管理
- 如何从零构建你的自动化运维体系?——从制度到技术
- word转换html 批量,Word批量转HTML工具
- 基于java的毕业设计管理系统
- java中分解json数据,java解析JSON数据详解
- 锐捷校园网:小米mini路由刷Padavan固件实现wifi上网
- 实验室设备管理系统SQL代码
- flutter A problem occurred configuring project ‘:shared_preferences_linux‘.
- 想晋升Android架构师——学习这些核心技术够用吗?
- zcmu-1359 NBA (水题)
- 程序员做外包有前途吗?谈谈外包的利与弊,字字扎心
热门文章
- 【Linux】一步一步学Linux——cal命令(75)
- 【Linux】一步一步学Linux——split命令(59)
- 【Linux】一步一步学Linux——tree命令(23)
- 【Linux系统编程】Linux 进程调度浅析
- ps自定义形状工具_PS教程——用PS绘制虚线的三种方法
- POJ 1852 Ants O(n)
- linux网络编程-----TCP连接及相关问题
- cad lisp 画四边形_多年经验总结CAD技巧6
- Locality Sensitive Hashing
- UEFI下用rufus安装ubuntu16.04 LTS