(大写的PS:oracle存储过程测试进不去解决方案:重新编译;)

TRUNC(sysdate, 'd') + 1   ////表示今天所在周的周一的年月日,如今天是2016.04.21周四,则TRUNC(sysdate, 'd') + 1表示2016.04.18周一

select trunc(sysdate) from dual;

case when 1>0 then 1 else 0 end  ////表示当1>0条件满足时取1,否则取0

select (case when 1>2 then 3 when 4>5 then 6 when 7<8 then 9 else 10 end) from dual; --结果为9;多个when条件,且else可省略;

TO_CHAR(sysdate, 'yyyyMMdd')   ////得到字符串"2016/04/21" PS:把日期或数字转换成字符串(to_char的结果和to_number结果可计算)

to_date('2018-12-12','yyyy-MM-dd') --可把字符串按指定格式转换成date类型,一般比较日期,要么把日期转换成字符串或数字,要么把字符串转换成日期,两者相同类型才能比较;

MONTHS_BETWEEN(DATE1,DATE2)   ////返回两个日期之间的月份数

select a.*,b.* from a,b where a.id=b.id(+)   ///加号在“=”右边表示左连(left join)  相当于select a.*,b.* from a left join b on a.id=b.id   a为主表

dense_rank()over(order by 列名排序)的结果是连续的,如 1 1 1 2

||  字符串连接符比如:'aaa' || 'bbb'= 'aaabbb'

EXECUTE IMMEDIATE,一般用于存储过程中执行动态sql,表不存在可能会报错

substr(字符串,截取开始位置,截取长度) //返回截取的字

instr('源字符串' , '目标字符串' ,'开始位置','第几次出现') (PS:在Oracle中比like效率更高)

nvl(a,b),当a不为null时返回a,当a为null时返回b。  nvl(REMARKS,' ')<>' '   判断字段不为null和空,length(REMARKS)>1,可能会导致语句执行时间过长;

rpad函数从右边对字符串使用指定的字符进行填充

rpad('tech', 7); 将返回'tech '

rpad('tech', 2); 将返回'te'

rpad('tech', 8, '0'); 将返回'tech0000'

round(x,y)   ////x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位

extract(month from sysdate)  --获取当前时间的月份   等价于to_char(sysdate,'MM')

extract(year from sydate) --获取当前时间的年份  等价于to_char(sysdate,'YYYY')

extract(day from sysdate) --返回当前时间的日   等价于to_char(sysdate,'DD')

exists 和in

1) select * from T1 where exists(select 1 from T2where T1.a=T2.a) ;

T1数据量小而T2数据量非常大时,T1<<T2 时,1) 的查询效率高。

2) select * from T1 where T1.a in (select T2.a fromT2) ;

T1数据量非常大而T2数据量小时,T1>>T2 时,2) 的查询效率高。

DECODE('X','b','c','d','e',0)  ----当X=b时得到c,当x=d时得到e,当x <>b and x<>d时得到0;

oracle相关函数的更多相关文章

  1. ORACLE相关函数使用总结

    1. 2018年12月12日 12时12分  这种时间格式怎么转成2018-12-12 12:12  解决: select regexp_replace(regexp_replace('2009年6月 ...

  2. Oracle用法、函数备忘记录

    Listagg select * from emp select LISTAGG(ename,'-') within group (order by deptno desc) from emp; 可以 ...

  3. Oracle学习笔记_09_字符串相关函数

    二.参考资料 0.Oracle中的字符串类型及相关函数详解 1.ORACLE 字符串操作 2.oracle函数大全-字符串处理函数

  4. Oracle 周相关函数

    Oracle 周相关函数   select trunc(sysdate,'W'), --每月1日作为第一个星期第一天 取当前周第一天对应日期 trunc(sysdate,'WW'), --每年1月1日 ...

  5. Oracle树查询及相关函数

    Oracle树查询的最重要的就是select...start with... connect by ...prior 语法了.依托于该语法,我们可以将一个表形结构的中以树的顺序列出来.在下面列述了Or ...

  6. oracle 处理时间和金额大小写的相关函数集合

    CREATE OR REPLACE FUNCTION MONEY_TO_CHINESE(MONEY IN VARCHAR2) RETURN VARCHAR2 IS C_MONEY ); M_STRIN ...

  7. [转]Oracle截取字符串相关函数

    转至:http://www.cnblogs.com/qmfsun/p/4493918.html 1.instr(sourceString,destString,start,appearPosition ...

  8. oracle数据学习第二天

    今天主要加强了对oracle数据库的数据类型一些相关函数的学习  (一)char和varchar2  字符串函数 <1>concat(char1,char2)字符串连接函数,用于连接两个字 ...

  9. 基于LR的Oracle应用性能测试

    最近对一个oracle ERP系统的INV模块进行性能测试,因为之前大部分都是测试web类型的应用,在这方面经验较少,期间也遇到了不少问题,因此有必要作些总结,以备后忘.首先先简单了解下测试对象相关的 ...

随机推荐

  1. Bootstarp的安装以及简单的使用方法(pycharm中)

    一.安装 首先打开Bootstarp的官网:https://v3.bootcss.com 下载完成后,解压压缩包,把解压后的文件导入pycham中 在HTML页面中的style中导入bootstrap ...

  2. android 系统dialog的应用

    应用示例如下: /* * 提示类型dialog */ private void dialog1(){ AlertDialog.Builder builder = new AlertDialog.Bui ...

  3. Flutter 即学即用系列博客——02 一个纯 Flutter Demo 说明

    前言 上一篇文章我们搭建好了 Flutter 的开发环境. Flutter 即学即用--01 环境搭建 这一篇我们通过 Flutter 的一个 Demo 来了解下 Flutter. 开发系统:MAC ...

  4. mssql sqlserver 不固定行转列数据(动态列)

    转自:http://www.maomao365.com/?p=5471 摘要: 下文主要讲述动态行列转换语句,列名会根据行数据的不同, 动态的发生变化 ------------------------ ...

  5. devm_xxx机制【转】

    前言 devm是内核提供的基础机制,用于方便驱动开发者所分配资源的自动回收.参考内核文档devres.txt.总的来说,就是驱动开发者只需要调用这类接口分配期望的资源,不用关心释放问题.这些资源的释放 ...

  6. CVE-2019-0686|Microsoft Exchange特权提升漏洞补丁已发布

    Microsoft Exchange Server中存在一个特权提升漏洞.成功利用此漏洞的攻击者可以获得与Exchange服务器的任何其他用户相同的权限.这可能允许攻击者执行诸如访问其他用户的邮箱之类 ...

  7. 巧妙地使用typora编辑有道云笔记

    设置方法 找到有道云笔记本地保存路径: 找到有道云笔记的保存的路径:启动有道云 - 设置 - 有道云笔记(本地文件) - 打开文件夹 使用typora打开有道云笔记目录: typora 菜单栏 - O ...

  8. gulp+tp5配置

    优化了文件过滤,更改文件只会重新生成修改的文件 项目目录构建: 在入口文件public下,创建html目录,作为前台静态资源目录 gulp.js文件 /*! * gulp * $ npm instal ...

  9. shell读取文件内容并进行变量赋值

    需求: shell读取文件内容,然后把内容赋值给变量然后进行字符串处理 实现: dataline=$(cat /root/data/data.txt) echo $dataline

  10. .NET Core 给使用.NET的公司所带来的机遇

    今晚在余晟的微信公众号看到了一篇文章< 从.NET/C#开发的“后继无人”说起: https://mp.weixin.qq.com/s/rO2d0xZ58Z2syqT7AaNT3w>. 这 ...