Oracle / PLSQL写语句的时候常使用的函数

最近在学习数据库方面的知识,做个标记。
这里有英文解释,建议多看看英文文档:

https://www.techonthenet.com/oracle/functions/

下面开始记录一下,自己在Oracle或者PLSQL常用的几个函数,

1、NUMTODSINTERVAL( number, expression )参数说明: number:数字类型的值 expression:单位,这里的单位是固定的,有DAY,HOUR,MINUTE,SECOND
举例说明:
-- 当前日期加25天
select sysdate, sysdate + numtodsinterval(25, ‘day‘) as res from dual;

-- 当前日期加2小时,这里转换了下时间格式,更容易看出来,下图所示
select to_char(sysdate, ‘yyyy-MM-dd hh24:mi:ss‘), to_char(sysdate + numtodsinterval(2, ‘hour‘), ‘yyyy-MM-dd hh24:mi:ss‘) as res from dual;

-- 当前日期加分钟,秒,可以依葫芦画瓢,尝试写一下

显示效果如下图所示:

与此同时,和他相同的函数是下面的函数

2、NUMTOYMINTERVAL( number, expression )
参数说明:
number:数字类型的值
expression:单位,这里的单位是固定的,有MONTH,YEAR
举例说明:
-- 当前日期加2月
select sysdate, sysdate + numtoyminterval(2, ‘month‘) as res from dual;

-- 当前日期加2年
select sysdate, sysdate + numtoyminterval(2, ‘year‘) as res from dual;

显示效果如下图所示:

时间: 2024-12-31 19:53:46

Oracle / PLSQL写语句的时候常使用的函数的相关文章

Oracle / PLSQL写语句 常用的几个函数

下面开始记录一下,自己在Oracle或者PLSQL常用的几个函数, 1add_months 增加或减去月份2. last_day(sysdate) 返回日期的最后一天3. months_between (date2,date1) 给出date2-date1的月份4. new_time (date,'this','that') 给出在this时区=other时区的日期和时间5. next_day (date,'day') 给出日期date和星期x之后计算下一个星期的日期6. sysdate 用来得

Oracle 如何写出高效的 SQL

转自:Oracle 如何写出高效的 SQL 要想写出高效的SQL 语句需要掌握一些基本原则,如果你违反了这些原则,一般情况下SQL 的性能将会很差. 1. 减少数据库访问次数连接数据库是非常耗时的,虽然应用程序会采用连接池技术,但与数据库交互依然很耗时,这就要求我们尽量用一条语句干完所有的事,尤其要避免把SQL 语句写在循环中,如果你遇到这样的人,应该毫不犹豫给他两个耳光. 2. 避免在有索引的字段上使用函数在索引字段上使用函数会使索引失效,我们可以通过其他方式避免使用函数,如:尽量 避免在 S

Oracle 动态SQL语句

Oracle 动态SQL语句 (2012-06-18 16:36:12) 转载▼ 标签: oracle it   EXECUTE IMMEDIATE代替了以前Oracle8i中DBMS_SQLpackage包. 它解析并马上执行动态的SQL语句或非运行时创建的PL/SQL块.动态创建和执行SQL语句性能超前,EXECUTEIMMEDIATE的目标在于减小企业费用并获得较高的性能,较之以前它相当容易编码.尽管DBMS_SQL仍然可用,但是推荐使用EXECUTEIMMEDIATE,因为它获的收益在包

Oracle之sql语句优化

项目中虽然使用了orm映射,但Oracle系统的优化还是很有价值的,这里从sql语句的角度对常用的语句做下总结. 1.from字段中的优化: Oracle安照从右到左的顺序加载表数据,应该把可以排除数据最多的表放到后面(基础表). 比如,在关联查询中,把课程表放到后面,成绩表放到前面,因为课程表数据一般比较少,关联的时候可以快速的过滤掉一些成绩数据. 2.where中的优化: 对可以过滤数据最多的,放到后面,原理也是Oracle执行从下到上(从右到左)的顺序. 3.使用列名替代*: 省去从字典表

oracle常用SQL语句(汇总版)

Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象 一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSERT INTO 表名(字段名1, 字段名2, ……) SELECT (字段名1, 字段名2, ……) FROM 另外的表名; 字符串类型的字段值必须用单引号括起来, 例如: ’GOOD DAY’ 如果字段值里包含单引号’ 需要

PowerDesigner使用Oracle建库语句中""双引号的问题

这几天使用powerdesigner建库,general database导出的sql建表语句带有""双引号,结果导致我的库中表名都是小写的,但是Oracle查询等语句默认都是大写判断的,因此很是不方 便,以前使用pd没发现这个问题,可能是版本升级导致的,查了一下,原来需要Pd再设置一下:两种方式1.pd Edit Current DBMS-ORACLE9i2::Script\Sql\Format\CaseSensitivityUsingQuote将双引号的设置改为NO 2.变通方法就

Oracle执行SQL语句的过程

转载至:http://blog.csdn.net/aqszhuaihuai/article/details/7024551 当我们提交一条sql语句时,Oracle会做哪些操作呢? Oracle会为每个用户进程分配一个服务器进程:service process(实际情况应该区分专用服务器和共享服务器),当service process接收到用户进程提交的sql语句时,服务器进程会对sql语句进行语法和词法分析. 名词解释: 语法分析:语句本身正确性. 词法分析:对照数据字典中检查表,索引,视图和

Oracle的update语句优化研究

最近研究sql优化,以下文章转自互联网: 1.     语法 单表:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 如:update t_join_situation set join_state='1'whereyear='2011' 更新年度为“2011”的数据的join_state字段为“1”.如果更新的字段加了索引,更新时会重建索引,更新效率会慢. 多表关联,并把一个表的字段值更新到另一个表中的字段去: update 表a set a.字段1 = (sele

【转】Oracle 执行动态语句

1.静态SQLSQL与动态SQL Oracle编译PL/SQL程序块分为两个种:其一为前期联编(early binding),即SQL语句在程序编译期间就已经确定,大多数的编译情况属于这种类型:另外一种是后期联编(late binding),即SQL语句只有在运行阶段才能建立,例如当查询条件为用户输入时,那么Oracle的SQL引擎就无法在编译期对该程序语句进行确定,只能在用户输入一定的查询条件后才能提交给SQL引擎进行处理.通常,静态SQL采用前一种编译方式,而动态SQL采用后一种编译方式.