淘先锋技术网

首页 1 2 3 4 5 6 7

oracle如何显示毫秒

1、打开任意一个oracle客户端工具,以plsql为例;

2、在查询窗口输入以下语句:select to_char(systimestamp, 'yyyy-mm-dd hh24:mi:ss.ff ') from dual;

3、查询结果(其中红框部分为毫秒部分),TIMESTAMP数据类型简介:TIMESTAMP数据类型是DATE的扩展,可以存储年、月、日、小时、分钟、秒,同时还可以存储秒的小数部分。

oracle 中将系统时间转换为毫秒的sql 怎么写?

这个问题。。。。

给你个详细的回答吧 以后就不再担忧这方面的任何问题

Oracle计算时间差表达式

--获取两时间的相差豪秒数

select ceil((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2008-04-30 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 * 60 * 1000) 相差豪秒数 FROM DUAL;

/*

相差豪秒数

----------

86401000

1 row selected

*/

--获取两时间的相差秒数

select ceil((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2008-04-30 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24 * 60 * 60) 相差秒数 FROM DUAL;

/*

相差秒数

----------

86401

1 row selected

*/

--获取两时间的相差分钟数

select ceil(((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2008-04-30 23:59:59' , 'yyyy-mm-dd hh24-mi-ss'))) * 24 * 60) 相差分钟数 FROM DUAL;

/*

相差分钟数

----------

1441

1 row selected

*/

--获取两时间的相差小时数

select ceil((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2008-04-30 23:59:59' , 'yyyy-mm-dd hh24-mi-ss')) * 24) 相差小时数 FROM DUAL;

/*

相差小时数

----------

25

1 row selected

*/

--获取两时间的相差天数

select ceil((To_date('2008-05-02 00:00:00' , 'yyyy-mm-dd hh24-mi-ss') - To_date('2008-04-30 23:59:59' , 'yyyy-mm-dd hh24-mi-ss'))) 相差天数 FROM DUAL;

/*

相差天数

----------

2

1 row selected

*/

----------------------------------------

注:天数可以2个日期直接减,这样更加方便

----------------------------------------

--获取两时间月份差

select (EXTRACT(year FROM to_date('2009-05-01','yyyy-mm-dd')) - EXTRACT(year FROM to_date('2008-04-30','yyyy-mm-dd'))) * 12 +

EXTRACT(month FROM to_date('2008-05-01','yyyy-mm-dd')) - EXTRACT(month FROM to_date('2008-04-30','yyyy-mm-dd')) months

from dual;

/*

MONTHS

----------

13

1 row selected

*/

--------------------------------------

注:可以使用months_between函数,更加方便

--------------------------------------

--获取两时间年份差

select EXTRACT(year FROM to_date('2009-05-01','yyyy-mm-dd')) - EXTRACT(year FROM to_date('2008-04-30','yyyy-mm-dd')) years from dual;

/*

YEARS

----------

1

1 row selected

oracle中todate怎么表示毫秒

参考

--返回当前时间 年月日小时分秒毫秒

select to_char(current_timestamp(5),'DD-MON-YYYY HH24:MI:SSxFF') from dual;

--返回当前 时间的秒毫秒,可以指定秒后面的精度(最大=9)

select to_char(current_timestamp(9),'MI:SSxFF') from dual;

求教oracle 获取当前时间并精确到毫秒怎么实现

用以下代码:

select to_char(systimestamp, 'yyyymmdd hh24:mi:ss.ff ') from dual

oracle 毫秒字段问题。。。

DATE

包含 世纪、年、月、日、时、分、秒。

占用7个字节,上面每个部分1个字节

TIMESTAMP 日期时间 可以包含到小数秒

TIMESTAMP WITH TIME ZONE 包含时区信息

TIMESTAMP WITH LOCAL TIME ZONE包含时区信息,自动调整

从上面看来,你的这个数据类型, 可以选择 TIMESTAMP

至于如何获取数据, 可以:

SQL SELECT

2 SESSIONTIMEZONE,

3 CURRENT_TIMESTAMP

4 FROM

5 DUAL;

SESSIONTIMEZONE

----------------------------------------

CURRENT_TIMESTAMP

----------------------------------------

-05:00

14-6月 -11 07.28.34.296000 上午 -05:00

也可以

SQL SELECT CURRENT_TIMESTAMP, LOCALTIMESTAMP FROM DUAL;

CURRENT_TIMESTAMP

---------------------------------------------------------

LOCALTIMESTAMP

---------------------------------------------------------

14-6月 -11 09.09.32.609000 下午 +08:00

14-6月 -11 09.09.32.609000 下午