oracle 求时间差年,Oracle计算时间差常用函数
兩個(gè)Date類型字段:START_DATE,END_DATE,計(jì)算這兩個(gè)日期的時(shí)間差(分別以天,小時(shí),分鐘,秒,毫秒):
天:
sql;">
ROUND(TO_NUMBER(END_DATE - START_DATE))
小時(shí):
sql;">
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24)
分鐘:
sql;">
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60)
秒:
sql;">
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60)
毫秒:
sql;">
ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 1000)
Oracle計(jì)算時(shí)間差函數(shù) 2008-08-20 10:00 兩個(gè)Date類型字段:START_DATE,END_DATE,計(jì)算這兩個(gè)日期的時(shí)間差(分別以天,小時(shí),分鐘,秒,毫秒): 天:
sql;">
ROUND(TO_NUMBER(END_DATE - START_DATE)) 小時(shí): ROUND(TO_NUMBER(END_DATE - START_DATE) * 24) 分鐘: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60) 秒: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60) 毫秒: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 1000)
外加to_date與to_char函數(shù):
ORACLE中:
select to_date('2007-06-28 19:51:20','yyyy-MM-dd HH24:mi:ss') from dual;
一般sql中:
select to_date('2007-06-28 19:51:20','yyyy-MM-dd HH:mm:ss') from dual;
區(qū)別:
1、HH修改為HH24。
2、分鐘的mm修改為mi。
24 小時(shí)的形式顯示出來(lái)要用 HH24
sql;">
select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;
select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;
to_date() function
1. 日期格式參數(shù) 含義說(shuō)明
D 一周中的星期幾
DAY 天的名字,使用空格填充到 9 個(gè)字符
DD 月中的第幾天
DDD 年中的第幾天
DY 天的簡(jiǎn)寫名
IW ISO 標(biāo)準(zhǔn)的年中的第幾周
IYYY ISO 標(biāo)準(zhǔn)的四位年份
YYYY 四位年份
YYY,YY,Y 年份的最后三位,兩位,一位
HH 小時(shí),按 12 小時(shí)計(jì)
HH24 小時(shí),按 24 小時(shí)計(jì)
MI 分
SS 秒
MM 月
Mon 月份的簡(jiǎn)寫
Month 月份的全名
W 該月的第幾個(gè)星期
WW 年中的第幾個(gè)星期 1. 日期時(shí)間間隔操作
當(dāng)前時(shí)間減去 7 分鐘的時(shí)間
select sysdate,sysdate - interval '7' MINUTE from dual
當(dāng)前時(shí)間減去 7 小時(shí)的時(shí)間
select sysdate - interval '7' hour from dual
當(dāng)前時(shí)間減去 7 天的時(shí)間
select sysdate - interval '7' day from dual
當(dāng)前時(shí)間減去 7 月的時(shí)間
select sysdate,sysdate - interval '7' month from dual
當(dāng)前時(shí)間減去 7 年的時(shí)間
select sysdate,sysdate - interval '7' year from dual
時(shí)間間隔乘以一個(gè)數(shù)字
select sysdate,sysdate - 8 *interval '2' hour from dual
2. 日期到字符操作
sql;">
select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual
select sysdate,'yyyy-mm-dd hh:mi:ss') from dual
select sysdate,'YYYY-DDd hh:mi:ss') from dual
select sysdate,'yyyy-mm iw-d hh:mi:ss') from dual
參考 oracle 的相關(guān)關(guān)文檔 (ORACLE901DOC/SERVER.901/A90125/sql_ELEMENTS4.HTM#48515)
3. 字符到日期操作
sql;">
select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual
具體用法和上面的 to_char 差不多。
4.TO_NUMBER
使用TO_NUMBER函數(shù)將字符轉(zhuǎn)換為數(shù)字
TO_NUMBER(char[,'格式'])
數(shù)字格式格式
9 代表一個(gè)數(shù)字
0 強(qiáng)制顯示0
$ 放置一個(gè)$符
L 放置一個(gè)浮動(dòng)本地貨幣符
.顯示小數(shù)點(diǎn)
,顯示千位指示符
oracle中的to_date參數(shù)含義
1.日期格式參數(shù)含義說(shuō)明
D 一周中的星期幾
DAY 天的名字,使用空格填充到9個(gè)字符
DD 月中的第幾天
DDD 年中的第幾天
DY 天的簡(jiǎn)寫名
IW ISO標(biāo)準(zhǔn)的年中的第幾周
IYYY ISO標(biāo)準(zhǔn)的四位年份
YYYY 四位年份
YYY,Y 年份的最后三位,兩位,一位
HH 小時(shí),按12小時(shí)計(jì)
HH24 小時(shí),按24小時(shí)計(jì)
MI 分
SS 秒
MM 月
Mon 月份的簡(jiǎn)寫
Month 月份的全名
W 該月的第幾個(gè)星期
WW 年中的第幾個(gè)星期 1.日期時(shí)間間隔操作
當(dāng)前時(shí)間減去7分鐘的時(shí)間
select sysdate,sysdate - interval '7' MINUTE from dual
當(dāng)前時(shí)間減去7小時(shí)的時(shí)間
select sysdate - interval '7' hour from dual
當(dāng)前時(shí)間減去7天的時(shí)間
select sysdate - interval '7' day from dual
當(dāng)前時(shí)間減去7月的時(shí)間
select sysdate,sysdate - interval '7' month from dual
當(dāng)前時(shí)間減去7年的時(shí)間
select sysdate,sysdate - 8 *interval '2' hour from dual
2.日期到字符操作
sql;">
select sysdate,'yyyy-mm-dd hh24:mi:ss') from dual
select sysdate,'yyyy-mm-dd hh:mi:ss') from dual
select sysdate,'YYYY-DDd hh:mi:ss') from dual
select sysdate,'yyyy-mm iw-d hh:mi:ss') from dual
3. 字符到日期操作
select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual
具體用法和上面的to_char差不多。
4. trunk/ ROUND函數(shù)的使用
5.oracle有毫秒級(jí)的數(shù)據(jù)類型
--返回當(dāng)前時(shí)間 年月日小時(shí)分秒毫秒
select to_char(current_timestamp(5),'DD-MON-YYYY HH24:MI:SSxFF') from dual;
--返回當(dāng)前時(shí)間的秒毫秒,可以指定秒后面的精度(最大=9)
select to_char(current_timestamp(9),'MI:SSxFF') from dual;
6.計(jì)算程序運(yùn)行的時(shí)間(ms)
總結(jié)
以上就是本文關(guān)于Oracle計(jì)算時(shí)間差常用函數(shù)的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱:等。感謝大家對(duì)編程之家的支持!
總結(jié)
以上是編程之家為你收集整理的Oracle計(jì)算時(shí)間差常用函數(shù)全部?jī)?nèi)容,希望文章能夠幫你解決Oracle計(jì)算時(shí)間差常用函數(shù)所遇到的程序開發(fā)問題。
如果覺得編程之家網(wǎng)站內(nèi)容還不錯(cuò),歡迎將編程之家網(wǎng)站推薦給程序員好友。
本圖文內(nèi)容來(lái)源于網(wǎng)友網(wǎng)絡(luò)收集整理提供,作為學(xué)習(xí)參考使用,版權(quán)屬于原作者。
總結(jié)
以上是生活随笔為你收集整理的oracle 求时间差年,Oracle计算时间差常用函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 黄斑变性会流眼泪吗
- 下一篇: oracle ora-24247 ACL