时间:2023-10-31来源:系统城装机大师作者:佚名
在实际的工作中会经常会用到to_char()、to_date()函数来对时间、日期进行处理。
1 2 3 4 |
select sysdate,to_char(sysdate, 'yyyy-mm-dd' ) from dual; select sysdate,to_char(sysdate, 'yyyy/mm/dd' ) from dual; select sysdate,to_char(sysdate, 'yyyymmdd' ) from dual; select sysdate,to_char(sysdate, 'yyyymmdd hh24:mi:ss' ) from dual; |
运行的输出结果为:
2017/6/15 17:07:24 2017-06-15
2017/6/15 17:07:25 2017/06/15
2017/6/15 17:07:25 20170615
2017/6/15 17:07:25 20170615 17:07:25
1 2 3 4 |
select sysdate,to_char(sysdate, 'yyyy' ) from dual; select sysdate,to_char(sysdate, 'mm' ) from dual; select sysdate,to_char(sysdate, 'hh24' ) from dual; select sysdate,to_char(sysdate, 'mi' ) from dual; |
运行的输出结果为:
2017/6/15 17:09:14 2017
2017/6/15 17:09:14 06
2017/6/15 17:09:14 17
2017/6/15 17:09:14 09
注:to_char()得到的是字符串,要查询具体单日、时、分要特别注意。
1 2 3 4 |
select accept_time,to_char(accept_time, 'mi' ) from TMP_WW_0615_GYTS_S2 where to_char(accept_time, 'mi' )= '06' ; select accept_time,to_char(accept_time, 'mi' ) from TMP_WW_0615_GYTS_S2 where to_char(accept_time, 'mi' )= '6' ; |
运行输出结果为:
2017/6/8 21:06:59 06
null
1》以12小时制显示
1 2 3 |
SQL> select to_char(sysdate, 'YYYY-MM-DD HH12:MI:SS AM' ) from dual; TO_CHAR(SYSDATE,'YYYY-MM-DDHH1 2007-06-29 02:50:06 下午 |
2》以24小时制显示
1 2 3 |
SQL> select to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS AM' ) from dual; TO_CHAR(SYSDATE,'YYYY-MM-DDHH2 2007-06-29 15:00:58 下午 |
3》得到当前时间的前一分钟
1 2 3 |
select to_char(Sysdate-1/21/60, 'HH24:MI:SS' ) from dual; TO_CHAR(SYSDATE-1/21/60,'HH24: 15:00:54 |
4》得到当前时间的后一分钟
1 2 3 |
select to_char(Sysdate+1/21/60, 'HH24:MI:SS' ) from dual; TO_CHAR(SYSDATE+1/21/60,'HH24: 15:03:53 |
5》得到当前时间的前一小时
1 2 3 |
select to_char(Sysdate-1/24, 'HH24:MI:SS' ) from dual; TO_CHAR(SYSDATE-1/24,'HH24:MI: 14:03:13 |
6》得到当前时间的后一小时
1 2 3 |
select to_char(Sysdate+1/24, 'HH24:MI:SS' ) from dual; TO_CHAR(SYSDATE+1/24,'HH24:MI: 16:03:32 |
7》得到当前时间的后一天
1 2 |
select to_char(Sysdate+1, 'YYYY-MM-DD' ) from dual; TO_CHAR(SYSDATE+1, 'YYYY-MM-DD' |
查询当前时间的前六个月
1 | select add_months(sysdate,-6) from dual |
1 2 3 4 |
select sysdate,to_date( '20170615' , 'yyyymmdd' ) from dual; select sysdate,to_date( '20170615' , 'yyyy-mm-dd' ) from dual; select sysdate,to_date( '20170615' , 'yyyy/mm/dd' ) from dual; select sysdate,to_date( '20170615' , 'yyyy-mm-dd hh24:mi:ss' ) from dual; |
运行输出结果为:
2017/6/15 17:20:27 2017/6/15
2017/6/15 17:20:27 2017/6/15
2017/6/15 17:20:27 2017/6/15
2017/6/15 17:20:27 2017/6/15
注:to_date()得到的日期格式是和系统的日期格式保持一致;
得到的时间为当天的 00 :00:00。
1 | select date '2017-5-1' ,to_date( '20170615' , 'yyyymmdd' ) from dual; |
运行输出结果为:
2017/5/1 2017/6/15
注:date'2017/5/1' 会提示格式不对。
2023-10-31
Oracle如何编写一个sqlldr实例2023-10-31
Oracle的SQLLDR用法简介2023-10-31
Oracle中的高效SQL编写PARALLEL解析1.Oracle数据库系统结构概述 2.Oracle数据库存储结构 物理存储结构 控制文件 数据文件 重做日志文件 归档日志文件 Oracle数据库逻辑结构 数据块(Data Block) (盘)区(Extent) 段(Segment) 表空间(Tablespace) 本地管...
2023-10-31
windows下的Oracle19c 一、官网下载Oracle19c数据库 二、安装Oracle数据库 1.解压安装包 2.运行setup.exe安装 三、配置 四、安装完Oracle数据库,给scott用户解锁 1.解决Oracle数据库中没有scott账户的问题 2.给scott...
2023-10-31