ORACLE 日期函数
2016-07-13 15:38
471 查看
ORACLE 日期函数
SYSDATE 当前的数据库系统时间
ADD_MONTHS(加减指定的月份)
MONTHS_BETWEEN(取两个日期之间相隔的月数)
LAST_DAY(取指定日期所在月的最后一天)
示例语句:
取当前数据库系统的时间
SELECT SYSDATE FROM DUAL;
以特定的时间格式显示
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
更改当前会话(SESSION)的方式,来统一设置当前会话日期显示格式
ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS';
显示后一个月的时间
SELECT ADD_MONTHS(SYSDATE,1) FROM DUAL;
显示前一个月的时间
SELECT ADD_MONTHS(SYSDATE,-1) FROM DUAL;
显示后一个月和前一个月之间的月数
SELECT MONTHS_BETWEEN(ADD_MONTHS(SYSDATE,1),ADD_MONTHS(SYSDATE,-1)) FROM DUAL;
显示本月最后一天的时间
SELECT LAST_DAY(SYSDATE) FROM DUAL;
ROUND(DATE,'FORMAT_STRING)
功能:按日期掩码的格式对给定的日期DATE进行舍入
SELECT ROUND (SYSDATE,'YYYY'),ROUND(SYSDATE,'MM'),ROUND(SYSDATE,'DD') FROM DUAL;
TRUNC(DATE,'FORMAT_STRING)
功能:按日期掩码的格式对给定的日期DATE进行截取
SELECT TRUNC(SYSDATE,'YYYY'),TRUNC(SYSDATE,'MM'),TRUNC(SYSDATE,'DD') FROM DUAL;
TO_CHAR(date, ‘format_string’)(按照时间掩码format_string的格式要求,将日期型数据date转换为字符型数据)
TO_DATE(‘string’, ‘format_string’)(将字符型数据string按照时间掩码format_string的格式要求,转换为相应的日期型数据)
查看当前日期的年份,月份,日期,小时,分钟
SELECT TO_CHAR(SYSDATE,'YYYY') YEAR,TO_CHAR(SYSDATE,'MM') MONTH,TO_CHAR(SYSDATE,'DD') DAY,
TO_CHAR(SYSDATE,'HH24') HOUR,TO_CHAR(SYSDATE,'MI') MINUTE,TO_CHAR(SYSDATE,'SS') S
FROM DUAL;
查看当前日期是在本年的第几个季度
SELECT TO_CHAR(SYSDATE,'Q') FROM DUAL;
查看当前日期是在本年的第几个星期,在本月的第几周
SELECT TO_CHAR(SYSDATE,'WW'),TO_CHAR(SYSDATE,'W') FROM DUAL;
查看当前日期是在本年的第几天,在本周的第几天(周日为1,周六为7)
SELECT TO_CHAR(SYSDATE,'DDD'),TO_CHAR(SYSDATE,'D') FROM DUAL;
http://www.cnblogs.com/jinzhili/articles/1115725.html
SYSDATE 当前的数据库系统时间
ADD_MONTHS(加减指定的月份)
MONTHS_BETWEEN(取两个日期之间相隔的月数)
LAST_DAY(取指定日期所在月的最后一天)
示例语句:
取当前数据库系统的时间
SELECT SYSDATE FROM DUAL;
以特定的时间格式显示
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
更改当前会话(SESSION)的方式,来统一设置当前会话日期显示格式
ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS';
显示后一个月的时间
SELECT ADD_MONTHS(SYSDATE,1) FROM DUAL;
显示前一个月的时间
SELECT ADD_MONTHS(SYSDATE,-1) FROM DUAL;
显示后一个月和前一个月之间的月数
SELECT MONTHS_BETWEEN(ADD_MONTHS(SYSDATE,1),ADD_MONTHS(SYSDATE,-1)) FROM DUAL;
显示本月最后一天的时间
SELECT LAST_DAY(SYSDATE) FROM DUAL;
ROUND(DATE,'FORMAT_STRING)
功能:按日期掩码的格式对给定的日期DATE进行舍入
SELECT ROUND (SYSDATE,'YYYY'),ROUND(SYSDATE,'MM'),ROUND(SYSDATE,'DD') FROM DUAL;
TRUNC(DATE,'FORMAT_STRING)
功能:按日期掩码的格式对给定的日期DATE进行截取
SELECT TRUNC(SYSDATE,'YYYY'),TRUNC(SYSDATE,'MM'),TRUNC(SYSDATE,'DD') FROM DUAL;
TO_CHAR(date, ‘format_string’)(按照时间掩码format_string的格式要求,将日期型数据date转换为字符型数据)
TO_DATE(‘string’, ‘format_string’)(将字符型数据string按照时间掩码format_string的格式要求,转换为相应的日期型数据)
掩码元素 | 含义 |
YYYY | 四位数年份 (如:2005) |
YY | 二位数年份(如 05) |
Q | 季度(1-4) |
MM | 月份(01-12) |
WW | 年的星期数(1-53),其中第一星期为年的第一天至第七天 |
W | 月的星期数(1-5),其中第一星期为月的第一天至第七天 |
DDD | 年的日(1-366) |
DD | 月的日(1-31) |
D | 周的日(1-7),其中周日为1,周六为7 |
HH24 | 24小时制(0-23) |
MI | 分钟(0-59) |
SS | 秒(0-59) |
SSSSS | 自午夜之后的秒(0-86399) |
SELECT TO_CHAR(SYSDATE,'YYYY') YEAR,TO_CHAR(SYSDATE,'MM') MONTH,TO_CHAR(SYSDATE,'DD') DAY,
TO_CHAR(SYSDATE,'HH24') HOUR,TO_CHAR(SYSDATE,'MI') MINUTE,TO_CHAR(SYSDATE,'SS') S
FROM DUAL;
查看当前日期是在本年的第几个季度
SELECT TO_CHAR(SYSDATE,'Q') FROM DUAL;
查看当前日期是在本年的第几个星期,在本月的第几周
SELECT TO_CHAR(SYSDATE,'WW'),TO_CHAR(SYSDATE,'W') FROM DUAL;
查看当前日期是在本年的第几天,在本周的第几天(周日为1,周六为7)
SELECT TO_CHAR(SYSDATE,'DDD'),TO_CHAR(SYSDATE,'D') FROM DUAL;
http://www.cnblogs.com/jinzhili/articles/1115725.html
相关文章推荐
- Oracle Hash
- Oracle数据库的启动和关闭顺序实例讲解
- 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
- oracle去除字符串中间的空格
- Oracle新建用户&用户解锁
- 删除oracle的varchar型数据为空的语句
- oracle用户创建及权限设置
- oracle VS postgresql系列-行列转换
- oracle自定义函数按照某个分隔符拆分字符串
- Oracle Instant Client(即时客户端) 安装与配置
- Oracle删除后,重装方案有哪些?删除后重装出错?多次安装后出错?如何完全删除Oracle?
- Oracle 存储过程实例集锦
- 如何在win7上安装oracle?????安装出错怎么办????
- oracle将一个用户下的所有表复制到以一个用户下
- Oracle SQL总结
- 通过Oracle透明网关连接Sybase
- Oracle Database 12c SQL Fundamentals I Exam Guide Exam 1Z0-061 学习笔记
- oracle关闭数据库被hang住的解决办法
- Oracle数据库中调用Java类开发存储过程、函数的方法
- Oracle 创建database link