我需要在oracle 11g中的视图内以毫秒为单位区分结束日期和开始日期。我可以在07-JUN-12 04.32.21.092000000 AM格式中从数据库中获取这两个日期。我只需要找到这些日期的差异,以毫秒为单位
答案 0 :(得分:3)
SELECT ((extract(DAY FROM time2-time1)*24*60*60)+
(extract(HOUR FROM time2-time1)*60*60)+
(extract(MINUTE FROM time2-time1)*60)+
extract(SECOND FROM time2-time1)) *1000
as millisecs FROM dual;
可以使用上述方法
完成答案 1 :(得分:1)
select (DATE1 - DATE2) as days,
(DATE1 - DATE2) * 24 as hours,
(DATE1 - DATE2) * 24 * 60 as minutes,
(DATE1 - DATE2) * 24 * 60 * 60 as seconds,
(DATE1 - DATE2) * 24 * 60 * 60 * 1000 as milliseconds
from dual
编辑 - 我假设DateTime类型。但是,Justin Cave的问题非常重要。时间戳与DateTime不同,因此如果您正在处理时间戳,我的答案将无法正常工作。
在这种情况下,请参阅此http://www.dba-oracle.com/t_timestamp_math_elapsed_times.htm。