- 浏览: 233927 次
- 性别:
- 来自: 广东
文章分类
最新评论
-
wangmuchang:
解压需要密码
CAS单点登录之测试应用 -
ayang722:
首先就要在运行报表birt的IEngineTask中加入, J ...
birt配置动态数据源 -
lihong11:
very good!
js常用方法 -
qtlkw:
你共享出来为什么要密码?要密码为何要共享出来?汗
CAS单点登录之测试应用 -
lishouxinghome:
请问如何获得用户的Id呢,往指点
使用 CAS 在 Tomcat 中实现单点登录
yyyy-mm-dd hh24:mi:ss.ff 年-月-日 时:分:秒.毫秒
--上一月,上一年
select add_months(sysdate,-1) last_month,add_months(sysdate,-12) last_year from dual;
--下一月,下一年
select add_months(sysdate,1) last_month,add_months(sysdate,12) last_year from dual;
--当月最后一天
select LAST_DAY(sysdate) from dual;
--下周日期
select next_day(sysdate,'星期五') "下周五" from dual;
select next_day(sysdate, 'Friday') "Next Friday" from dual;
select next_day(sysdate, 4) from dual;
如果你不确定自己的时区或者你担心从一个时区移植到另一个时区时,SQL语句会出错,Oracle还允许你用数字的形式来表示工作日。
但是要记得一点:1表示的是周日,2表示的是周一,3表示的是周二,依此类推。
--固定日期一天
select * from account a where a.applytime>= to_date('2011-02-26','yyyy-mm-dd') and a.applytime< to_date('2011-02-27','yyyy-mm-dd');
--前天一天
select * from account a where a.applytime>= to_date(to_char(sysdate-2,'yyyy-mm-dd'),'yyyy-mm-dd') and a.applytime< to_date(to_char(sysdate-1,'yyyy-mm-dd'),'yyyy-mm-dd');
昨天一天
select * from dxw_tmp a where a.applytime>= to_date(to_char(sysdate-1,'yyyy-mm-dd'),'yyyy-mm-dd') and a.applytime< to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd');
--今天一天
select * from account a where a.applytime>= to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd') and a.applytime< to_date(to_char(sysdate+1,'yyyy-mm-dd'),'yyyy-mm-dd');
上月第一天
select to_date(to_char(add_months(sysdate,-2)+1,'yyyy-mm-dd'),'yyyy-mm-dd') from dual ;
上月最后一天
select to_date(to_char(add_months(sysdate,-1),'yyyy-mm-dd'),'yyyy-mm-dd') from dual;
select * from account a where a.applytime>= to_date(to_char(add_months(sysdate,-2)+1,'yyyy-mm-dd'),'yyyy-mm-dd') and a.applytime<= to_date(to_char(add_months(sysdate,-1),'yyyy-mm-dd'),'yyyy-mm-dd');
select to_date(to_char(add_months(sysdate,-2),'yyyy-mm-dd'),'yyyy-mm-dd') from dual;
select to_date(to_char(add_months(sysdate,-3)+1,'yyyy-mm-dd'),'yyyy-mm-dd') from dual ;
--trunc 截取日期
--当天零点
select trunc(sysdate,'dd') from dual;
--当月一号
select trunc(sysdate,'mm') from dual;
--本年一月一号
select trunc(sysdate,'yyyy') from dual;
--可以根据需要自己去截取
关于毫秒:
Oracle 毫秒的存储必须字段类型为 timestamp(6) –数字表示存储的毫秒位数
--当前毫秒级时间
select to_char(current_timestamp,'yyyy-mm-dd hh24:mi:ss.ff6') from dual;
--字符串转为 timestamp类型
select to_timestamp('2012-02-03 10:29:46.453234','yyyy-mm-dd hh24:mi:ss.ff6') from dual;
--timestamp转为字符型
select to_char(systimestamp,'yyyy-mm-dd hh24:mi:ss.ff6') from dual;
PS: ff后面的数字表示获得的毫秒位数,默认是6;一般ff3 获得三位毫秒数。
如果你想把DATE类型转换成TIMESTAMP类型,就使用CAST函数。
select cast(sysdate as timestamp) from dual;
但是值得注意的是:在转换后的时间段尾部有了一段“.000000”。这是因为从date转换过来的时候,没有小数秒的信息,缺省为0。而且显示格式是按照参数NLS_TIMESTAMP_FORMAT定的缺省格式显示。当你把一个表中date类型字段的数据移到另一个表的timestamp类型字段中去的时候,可以直接写INSERT SELECT语句,oracle会自动为你做转换的。
注意: to_char函数支持date和timestamp,但是trunc却不支持TIMESTAMP数据类型。这已经清楚表明了在当两个时间的差别极度重要的情况下,使用TIMESTAMP数据类型要比DATE数据类型更确切。
还值得一提的是:毫秒的显示精度是6位,不过有效位是3位,即最大值达到999,满1000ms就进为1s。当然你想保存6位毫秒也是有办法的:
insert 值指定六位:to_timestamp('2012-02-03 10:29:46.453234','yyyy-mm-dd hh24:mi:ss.ff6')
转自:http://blog.csdn.net/runming918/article/details/7231259
发表评论
-
Oracle 连接故障的排查
2014-04-10 16:33 729Oracle 连接故障的排查 1、 故障现象 通 ... -
系统共享内存的修改(ORA-27102: out of memory)
2014-04-10 16:24 776今天做压力测试的时候,修改数据参数出现ORA-27102: ... -
Oracle的AWR报告分析
2014-04-10 16:23 650今晚来分析一下awr报告,首先说一下什么是awr报告,它能给 ... -
oracle 10g Enterprise Manager 无法连接到数据库实例分析
2014-03-27 17:40 9701 问题描述客户端通过IE 浏览器登陆oracle 10g ... -
linux Oracle服务启动&停止脚本与开机自启动
2014-03-27 17:39 1000在CentOS 6.3下安装完Oracl ... -
plsql设置
2012-12-25 17:54 8411.设置date类型显示格式 TOOLS(工具)——> ... -
oracle异常收集
2012-12-21 11:14 8311. ORA-12516: TNS: 监听程序找不到符合协议 ... -
oracle基础sql语句二
2012-12-21 10:03 684linux 切换oracel用户: su oracle ... -
修改oracle数据库的字符集
2012-12-21 09:58 1015SHUTDOWN IMMEDIATE;STARTUP MOUN ... -
Oracle对象类型详解
2012-03-26 14:38 1305一、抽象数据类型1、创建类型--地址类型CREATE O ... -
oracle数组类型简单实例介绍
2012-03-26 10:49 1115Oracle数组一般可以分为固定数组和可变数组 固定数组 ... -
oracle问题收集一
2011-08-30 15:37 12431.dblink创建语法 --删除dblink dr ... -
Oracle自治事务pragma autonomous_transaction的介绍
2011-08-05 15:20 1603transaction has no link to the ... -
oracle中用START WITH...CONNECT BY PRIOR子句实现递归查询
2011-08-05 15:03 955今天发现在oracle中的sele ... -
oracle树中prior的用法
2011-08-05 15:02 1774在oracle生成树时,prior ... -
事务中的Savepoints
2011-07-29 09:59 774事务中的Savepoints 你可以在事务上下文中声明称为sa ... -
Oracle参数游标
2011-07-29 09:55 872一、参数游标 参数 ... -
PLSQL(语法--异常处理--游标--存储过程--触发器--oracle分页)
2011-07-08 17:00 1299《PL/SQL编程》 ... -
用pl/sql developer导出表结构和数据
2011-06-24 11:45 1297点击Tools--Export User Objects 这 ... -
Oracle学习笔记一:体系结构
2011-06-24 11:40 746http://blog.csdn.net/chenmo_zha ...
相关推荐
在Oracle数据库中,`TIMESTAMP`与`DATE`两种数据类型是用于存储日期和时间信息的关键组成部分,但它们之间存在显著的区别,特别是在处理时间和精度方面。本文将深入探讨这两种数据类型的特点,以及如何在实际应用中...
Oracle数据库中的DATE和TIMESTAMP是两种用于存储日期和时间信息的数据类型,它们在用途和精度上有显著的区别。 1. DATE数据类型: DATE类型是Oracle中最基础的日期时间数据类型,可以存储日期(年、月、日)和时间...
当需要考虑时分秒时,TO_TIMESTAMP函数就派上用场了。这个函数将字符串转换为时间戳类型,同样需要指定日期时间格式模型。例如: ```sql SELECT TO_TIMESTAMP('2022-01-01 12:34:56', 'YYYY-MM-DD HH24:MI:SS') ...
本篇文章将全面总结Oracle中的日期函数,帮助你解决日常工作中遇到的各种日期处理问题。 1. **SYSDATE**: 这是最常用的内置常量,返回当前系统的日期和时间。例如: ```sql SELECT SYSDATE FROM DUAL; ``` 2. ...
最后,Oracle 还提供了其他日期函数,如 current_timestamp 函数,可以返回当前日期和时间,包括毫秒级的精度。例如: select to_char(current_timestamp(5),'DD-MON-YYYY HH24:MI:SSxFF') from dual; 在上面的...
总结起来,Oracle的Timestamp with Time Zone类型和Java的`ZonedDateTime`类是处理时区敏感日期时间的关键工具。在开发中,理解它们的工作原理,掌握如何在数据库和应用程序之间正确地转换和操作这些数据,对于构建...
Oracle 数据库中 TIMESTAMP 与 DATE 两个数据类型都是用于存储日期和时间的,但是它们之间有着很大的区别。在本文中,我们将详细比较这两个数据类型的特点、使用场景和优缺点。 DATE 数据类型 DATE 数据类型是 ...
### Oracle时间函数处理总结大全 Oracle数据库提供了丰富的内置函数来处理日期和时间数据。这些函数在日常开发工作中非常实用,可以高效地完成日期格式转换、日期计算等操作。本文将根据给定的内容对Oracle中常用的...
Oracle中的时间是Date型,以下函数提供了两种时间转换的Oracle函数 --unix时间戳与date时间互转 SELECT oracle_to_unix(SYSDATE),unix_to_oracle(1551774286),oracle_to_unix(SYSDATE) FROM dual;
Oracle数据库中的`DATE`和`TIMESTAMP`是两种常见的日期和时间数据类型,它们在处理时间信息时有着不同的特性和用途。 首先,`DATE`数据类型是我们最常使用的,它可以存储日期和时间,包括世纪、年、月、日、小时、...
ORACLE 中日期和时间函数汇总 Oracle 中的日期和时间函数是数据库管理系统中非常重要的一部分,掌握这些函数可以帮助开发者和 DBA 更好地处理日期和时间相关的操作。 日期和字符转换函数 Oracle 中提供了两个...
接着通过`TO_TIMESTAMP`函数将字符串格式的日期时间转换成`TIMESTAMP`类型的数据并插入到表中: ```sql INSERT INTO test VALUES ( TO_TIMESTAMP('2006-01-01 12:10:10.1', 'YYYY-MM-DD HH24:MI:SS.FF'), TO_...
### Oracle to_date() 函数详解 #### 一、概述 `to_date()` 是 Oracle 数据库中的一个重要函数,用于将字符串转换为日期格式。在实际应用中,尤其在处理时间戳或者进行日期比较时非常有用。本文将详细介绍 `to_...
本文将详细探讨Oracle中的时间函数,尤其是`to_date()`和`to_char()`这两个转换函数。 首先,`to_date()`函数用于将字符串转换为日期类型。这个函数需要两个参数:要转换的字符串和指定的日期格式模型。例如,`to_...
Oracle 日期型函数是对日期类型数据进行处理和分析的函数,包括 SYSTIMESTAMP、CURRENT_DATE、CURRENT_TIMESTAMP 等。 五、字符型函数 Oracle 字符型函数是对字符类型数据进行处理和分析的函数,包括 CONCAT、...
Oracle 时间函数 Oracle 时间函数是一个强大的工具,用于处理和操作日期和时间数据。在 Oracle 中,时间函数可以分为两大类:日期函数和时间函数。日期函数用于处理日期数据,时间函数用于处理时间数据。 一、...
3. 日期和时间函数:DATE和TIMESTAMP类型的函数非常关键,如SYSDATE获取当前系统日期,ADD_MONTHS()添加指定月数,EXTRACT()提取日期或时间的部分,TO_CHAR()将日期转换为可读字符串。 4. 转换函数:TO_DATE()和TO_...