新聞中心
本文主要介紹的是Oracle時間的實際應用中的轉(zhuǎn)換函數(shù)和date實際操作的相關關系,我們都知道轉(zhuǎn)換函數(shù)和date實際操作的相關關系最大的就是兩個可以轉(zhuǎn)換函數(shù)即,to_date(),to_char()

十年的二七網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調(diào)整二七建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“二七網(wǎng)站設計”,“二七網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
to_date() 作用將字符類型按一定格式轉(zhuǎn)化為日期類型。
具體用法:to_date(''2004-11-27'',''yyyy-mm-dd''),前者為字符串,后者為轉(zhuǎn)換日期格式,注意,前后兩者要以一對應。
如;to_date(''2004-11-27 13:34:43'', ''yyyy-mm-dd hh24:mi:ss'') 將得到具體的Oracle時間
多種日期格式:
YYYY:四位表示的年份
YYY,YY,Y:年份的最后三位、兩位或一位,缺省為當前世紀
MM:01~12的月份編號
MONTH:九個字符表示的月份,右邊用空格填補
MON:三位字符的月份縮寫
WW:一年中的星期
D:星期中的第幾天
DD:月份中的第幾天
DDD:年所中的第幾天
DAY:九個字符表示的天的全稱,右邊用空格補齊
HH,HH12:一天中的第幾個小時,12進制表示法
HH24:一天中的第幾個小時,取值為00~23
MI:一小時中的分鐘
SS:一分鐘中的秒
SSSS:從午夜開始過去的秒數(shù)
to_char():將日期轉(zhuǎn)按一定格式換成字符類型
- SQL> select to_char(sysdate,''yyyy-mm-dd hh24:mi:ss'') time from dual;
- TIME
- 2004-10-08 15:22:58
即把當前Oracle時間按yyyy-mm-dd hh24:mi:ss格式轉(zhuǎn)換成字符類型
在oracle中處理日期大全
TO_DATE格式
- Day:
- dd number 12
- dy abbreviated fri
- day spelled out friday
- ddspth spelled out, ordinal twelfth
- Month:
- mm number 03
- mon abbreviated mar
- month spelled out march
- Year:
- yy two digits 98
- yyyy four digits 1998
24小時格式下時間范圍為: 0:00:00 - 23:59:59....
12小時格式下Oracle時間范圍為: 1:00:00 - 12:59:59 ....
[ZT]日期和??函???
1.
日期和字符轉(zhuǎn)換函數(shù)用法(to_date,to_char)
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.
兩個日期間的天數(shù)
- select floor(sysdate - to_date(''20020405'',''yyyymmdd'')) from dual;
5. 時間為null的用法
- select id, active_date from table1
- UNION
- select 1, TO_DATE(null) from dual;
注意要用TO_DATE(null)
6.
- a_date between to_date(''20011201'',''yyyymmdd'')
- and to_date(''20011231'',''yyyymmdd'')
那么12月31號中午12點之后和12月1號的12點之前是不包含在這個范圍之內(nèi)的。
所以,當時間需要精確的時候,覺得to_char還是必要的
7. 日期格式?jīng)_突問題
輸入的格式要看你安裝的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,當然還有很多,
可查看
q查找2002-02-28至2002-02-01間除星期一和七的天數(shù)
在前后分別調(diào)用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
10. Next_day的用法
- Next_day(date, day)
- Monday-Sunday, for format code DAY
- Mon-Sun, for format code DY
- 1-7, for format code D
以上的相關內(nèi)容就是對Oracle時間的介紹,望你能有所收獲。
文章出自: http://www.programbbs.com/doc/class10-3.htm
網(wǎng)頁標題:在Oracle時間應用中如何轉(zhuǎn)換函數(shù)
本文URL:http://m.fisionsoft.com.cn/article/cdgoieg.html


咨詢
建站咨詢
