- 浏览: 51049 次
- 性别:
- 来自: 北京
最新评论
-
lqwforever:
不错,支持一下
redhat linux卸载自带的Java1.4.2安装JDK6 -
liumiao2011:
keepgoing 写道java代码也可以格式化还是只能格式化 ...
让Editplus自动格式化js、css、html。。。 -
keepgoing:
java代码也可以格式化还是只能格式化HTML/CSS、js代 ...
让Editplus自动格式化js、css、html。。。
TO_DATE格式(以时间:2007-11-02 13:45:25为例)
Year:
yy two digits 两位年 显示值:07
yyy three digits 三位年 显示值:007
yyyy four digits 四位年 显示值:2007
Month:
mm number 两位月 显示值:11
mon abbreviated 字符集表示 显示值:11月,若是英文版,显示nov
month spelled out 字符集表示 显示值:11月,若是英文版,显示november
Day:
dd number 当月第几天 显示值:02
ddd number 当年第几天 显示值:228
dy abbreviated 当周第几天简写 显示值:星期五,若是英文版,显示fri
day spelled out 当周第几天全写 显示值:星期五,若是英文版,显示friday
ddspth spelled out, ordinal twelfth
Hour:
hh two digits 12小时进制 显示值:01
hh24 two digits 24小时进制 显示值:13
Minute:
mi two digits 60进制 显示值:45
Second:
ss two digits 60进制 显示值:25
其它
Q digit 季度 显示值:4
WW digit 当年第几周 显示值:44
W digit 当月第几周 显示值:1
24小时格式下时间范围为: 0:00:00 - 23:59:59....
12小时格式下时间范围为: 1:00:00 - 12:59:59 ....
1. 日期和字符转换函数用法(to_date,to_char)
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual; --日期转化为字符串
select to_char(sysdate,'yyyy') as nowYear from dual; --获取时间的年
select to_char(sysdate,'mm') as nowMonth from dual; --获取时间的月
select to_char(sysdate,'dd') as nowDay from dual; --获取时间的日
select to_char(sysdate,'hh24') as nowHour from dual; --获取时间的时
select to_char(sysdate,'mi') as nowMinute from dual; --获取时间的分
select to_char(sysdate,'ss') as nowSecond from dual; //获取时间的秒
select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') from dual
2.
select to_char( to_date(222,'J'),'Jsp') from dual
显示Two Hundred Twenty-Two
3.求某天是星期几
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day') from dual;
星期一
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;
monday
设置日期语言
ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN';
也可以这样
TO_DATE ('2002-08-26', 'YYYY-mm-dd', 'NLS_DATE_LANGUAGE = American')
4. 两个日期间的天数
select floor(sysdate - to_date('20020405','yyyymmdd')) from dual;
7. 日期格式冲突问题
输入的格式要看你安装的ORACLE字符集的类型, 比如: US7ASCII, date格式的类型就是: '01-Jan-01'
alter system set NLS_DATE_LANGUAGE = American
alter session set NLS_DATE_LANGUAGE = American
或者在to_date中写
select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;
注意我这只是举了NLS_DATE_LANGUAGE,当然还有很多,
可查看
select * from nls_session_parameters
select * from V$NLS_PARAMETERS
8.
select count(*)
from ( select rownum-1 rnum
from all_objects
where rownum <= to_date('2002-02-28','yyyy-mm-dd') - to_date('2002-
02-01','yyyy-mm-dd')+1
)
where to_char( to_date('2002-02-01','yyyy-mm-dd')+rnum-1, 'D' )
not in ( '1', '7' )
查找2002-02-28至2002-02-01间除星期一和七的天数
在前后分别调用DBMS_UTILITY.GET_TIME, 让后将结果相减(得到的是1/100秒, 而不是毫秒).
9. 查找月份
select months_between(to_date('01-31-1999','MM-DD-YYYY'),to_date('12-31-1998','MM-DD-YYYY')) "MONTHS" FROM DUAL;
1
select months_between(to_date('02-01-1999','MM-DD-YYYY'),to_date('12-31-1998','MM-DD-YYYY')) "MONTHS" FROM DUAL;
1.03225806451613
16.找出今年的天数
select add_months(trunc(sysdate,'year'), 12) - trunc(sysdate,'year') from dual
20.一年的第几天
select TO_CHAR(SYSDATE,'DDD'),sysdate from dual
24,round[舍入到最接近的日期](day:舍入到最接近的星期日)
select sysdate S1,
round(sysdate) S2 ,
round(sysdate,'year') YEAR,
round(sysdate,'month') MONTH ,
round(sysdate,'day') DAY from dual
25,trunc[截断到最接近的日期,单位为天] ,返回的是日期类型
select sysdate S1,
trunc(sysdate) S2, //返回当前日期,无时分秒
trunc(sysdate,'year') YEAR, //返回当前年的1月1日,无时分秒
trunc(sysdate,'month') MONTH , //返回当前月的1日,无时分秒
trunc(sysdate,'day') DAY //返回当前星期的星期天,无时分秒
from dual
26,返回日期列表中最晚日期
select greatest('01-1月-04','04-1月-04','10-2月-04') from dual
27.计算时间差
注:oracle时间差是以天数为单位,所以换算成年月,日
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))/365) as spanYears from dual //时间差-年
select ceil(moths_between(sysdate,to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))) as spanMonths from dual //时间差-月
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))) as spanDays from dual //时间差-天
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24) as spanHours from dual //时间差-时
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24*60) as spanMinutes from dual //时间差-分
select floor(to_number(sysdate-to_date('2007-11-02 15:55:03','yyyy-mm-dd hh24:mi:ss'))*24*60*60) as spanSeconds from dual //时间差-秒
29.查找月的第一天,最后一天
SELECT Trunc(Trunc(SYSDATE, 'MONTH') - 1, 'MONTH') First_Day_Last_Month,
Trunc(SYSDATE, 'MONTH') - 1 / 86400 Last_Day_Last_Month,
Trunc(SYSDATE, 'MONTH') First_Day_Cur_Month,
LAST_DAY(Trunc(SYSDATE, 'MONTH')) + 1 - 1 / 86400 Last_Day_Cur_Month
FROM dual;
出处: http://ajian.cnblogs.com
本文版权归作者和博客园所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
发表评论
-
查看ORACLE实例名和服务名的方法(AIX系统下)
2013-09-05 12:53 966数据库命令: sqlplus "/as sysd ... -
JSP禁用缓存常用方法
2013-05-05 12:59 6041.客户端缓存要在<head>中加入类似如 ... -
安装eclipse插件:JadClipse
2013-04-23 13:28 8551.下载反编译工具jad.exe,放在eclipse使用的 ... -
eclipse的JavaWeb工程.classpath设置
2013-03-17 12:21 1159<?xml version="1.0& ... -
tomcat注册成windows服务
2012-12-07 17:28 7381.进入tomcat目标下的bin目录里,执行ser ... -
查看oracle的sid
2012-12-07 13:44 974有时候我们在tnsnames.ora配了一个连接串,用plsq ... -
调试plsql的存储过程
2012-12-05 21:37 854先右键add debug information 再右键te ... -
如何删除火狐插件
2012-11-25 22:19 643在地址栏输入about:config ,在搜索框中搜索plug ... -
windows查看端口占用情况
2012-11-19 00:47 7521.查看所有的端口占用情况 C:\>netsta ... -
在移动窗口的过程中显示整个窗口
2012-09-09 22:21 624修改注册表[HKEY_CURRENT_USER\CONTROL ... -
删除svn信息
2012-06-07 22:17 1135一、eclipse插件删除svn信息 右键点击项 ... -
Solaris下启动Oracle步骤
2012-05-22 11:08 877先打开一个终端,如果你是以root用户登录的系统 1。 ... -
DBLINK详解
2012-05-21 11:01 8871.创建dblink语法: CREATE [PUBLI ... -
linux命令
2012-05-02 18:52 719解压缩 unzip XXX.tar/zip 注意 ... -
redhat linux卸载自带的Java1.4.2安装JDK6(rpm)
2012-05-02 18:35 1094一.jdk1.4卸载 由于redhat Enterpr ... -
[转]“Microsoft Office Word已停止工作”解决方法
2012-03-27 15:14 1058方法一、双击打开“计算机”在右上方的搜索框中输入“Nor ... -
svn插件
2012-03-26 19:35 2499在线安装(比较慢) 类似: name:subclipse ... -
[转]区分Eclipse中的两种JRE
2012-03-22 00:03 1012Eclipse用到两种JRE,一是 ... -
redhat linux卸载自带的Java1.4.2安装JDK6
2012-03-12 16:58 2848一、卸载jdk1.4 由于Redhat Enterpr ... -
让Editplus自动格式化js、css、html。。。
2012-02-19 16:13 1407本人一般用editp ...
相关推荐
Oracle中to_date格式 Data与String互转及各种用法
Oracle 中的 TO_DATE 和 TO_CHAR 函数 oracle 中 TO_DATE 函数的时间格式,以 2008-09-10 234556 为例
详细的介绍了Oracle中TO_DATE TO_CHAR的属性与运用方法
Oracle_to_date,ORacle数据库的日期类型转换的问题。
Oracle to_dOracle to_date() 用法细节.txtate() 用法细节.txOracle to_date() 用法细节.txtt
Oracle的to_date函数具体应用,详细讲解to_Date等日期化函数的使用方法
Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理 Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理
在Oracle数据库中,Oracle to_date()函数是我们经常使用的函数,下面就为您详细介绍Oracle to_date()函数的用法,希望可以对您有所启迪。 to_date()与24小时制表示法及mm分钟的显示: 一、在使用Oracle的to_date函数...
本文介绍了Oracle中的to_date参数含义。
oracle to_date 函数详解,详细讲解了to_date函数的最详细用法
Oracle的to_date函数.docx
oracle数据库中关于时间函数的具体应用。
TO_DATE格式(以时间:2007-11-02 13:45:25为例) 1. 日期和字符转换函数用法(to_date,to_char) 代码如下:select to_char(sysdate,’yyyy-mm-dd hh24:mi:ss’) as nowTime from dual; //日期转化为字符串 select ...
TO_DATE格式(以时间:2007-11-0213:45:25为例) Year: yytwodigits两位年显示值:07 yyythreedigits三位年显示值:007 yyyyfourdigits四位年显示值:2007 Month: mmnumber两位月显示值:11 monabbreviated字符集表示显示值...
对oracle日期格式的详细介绍,特别全,特别好。
NULL 博文链接:https://576017120.iteye.com/blog/1280786
大家都知道,从oracle数据库中导出数据时,如果其中有字段类型为date,那么导出时将会变成to_date('29-12-2010 10:20:30', 'hh24:mi:ss'),如果你要将这导出的数据在oracle客户端中执行,应该是没什么问题的,但是...
C#使用参数传值方式操作oracle的date字段,主要介绍了oracle的to_date使用方法,大家参考使用吧
总结的sql语法,其中包括一些函数的用法,to_date,to_char,to_number等等函数