W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
日期時(shí)間數(shù)據(jù)類(lèi)型中除了 ?DATE
? 數(shù)據(jù)類(lèi)型以外還有 ?TIMESTAMP[(scale)]
?時(shí)間戳數(shù)據(jù)類(lèi)型。它是 ?DATE
?數(shù)據(jù)類(lèi)型的擴(kuò)展,跟 DATE 數(shù)據(jù)類(lèi)型一樣,它存儲(chǔ)了年、月、日、時(shí)、分和秒等信息,但是不存儲(chǔ)時(shí)區(qū)信息,它的時(shí)間最大可以精確到納秒。所以它常用于存儲(chǔ)時(shí)間精確度高和不需要考慮時(shí)區(qū)變換的數(shù)據(jù)。
TIMESTAMP [(scale)]
參數(shù) |
取值范圍 |
說(shuō)明 |
---|---|---|
scale |
0~9 |
TIMESTAMP[(scale)] 的范圍和精確度取決于 scale 的值,最大值為 9(納秒,即秒數(shù)精確至小數(shù)點(diǎn) 9 位),最小值為 0(秒,即秒數(shù)精確至小數(shù)點(diǎn) 0 位),默認(rèn)值為 6。 |
?TIMESTAMP
? 數(shù)據(jù)類(lèi)型的默認(rèn)輸入輸出格式由 ?NLS_TIMESTAMP_FORMAT
? 決定,運(yùn)行以下 SQL 語(yǔ)句查看默認(rèn)格式:
SELECT @@NLS_TIMESTAMP_FORMAT FROM DUAL;
返回結(jié)果:
DD-MON-RR HH.MI.SSXFF AM
如果您需要自定義數(shù)據(jù)的格式,可以使用轉(zhuǎn)換函數(shù)。在插入數(shù)據(jù)時(shí),您可以通過(guò)函數(shù) ?TO_TIMESTAMP (char,fmt)
?指定數(shù)據(jù)的輸入格式。查詢(xún)數(shù)據(jù)時(shí),您可以通過(guò)函數(shù) ?TO_CHAR (datetime,fmt)
?指定數(shù)據(jù)的輸出格式。這兩個(gè)轉(zhuǎn)換函數(shù)會(huì)將字符串轉(zhuǎn)化為參數(shù) fmt 中定義的格式。在 ?fmt
? 未指明的情況下,使用默認(rèn)格式。
?0001-01-01 00:00:00.000000000
? ~ ?9999-12-31 23:59:59.999999999
?
TIMESTAMP
? 的兩列 timestp1 和 timestp2, 并且為 timestp2 指定了時(shí)間的精度為 3。向兩列同時(shí)使用? TO_TIMESTAMP(string, format)
?插入日期值 2020-01-01 11:00:00。CREATE TABLE Timestamp_Sample(timestp1 TIMESTAMP, timestp2 TIMESTAMP(3));
INSERT INTO Timestamp_Sample(timestp1,timestp2) VALUES(TO_TIMESTAMP('2020-01-01 11:00:00','YYYY-MM-DD HH24:MI:SS'),TO_TIMESTAMP('2020-01-01 11:00:00','YYYY-MM-DD HH24:MI:SS'));
SELECT * FROM Timestamp_Sample;
結(jié)果如下,可以看到 timestp1 由于沒(méi)有指定 scale 的值,所以結(jié)果時(shí)間精度默認(rèn)為 6 位,timestp2 在指定后精度為 3 位:
+------------------------------+---------------------------+
| timestamp1 | timestamp2 |
+------------------------------+---------------------------+
| 01-JAN-20 11.00.00.000000 AM | 01-JAN-20 11.00.00.000 AM |
+------------------------------+---------------------------+
TO_CHAR (datetime,fmt)
?指定輸出格式。SELECT TO_CHAR(TO_TIMESTAMP_TZ('25-FEB-20 11:00:00 AM America/Los_Angeles','DD-MON-RR HH:MI:SSXFF PM TZR'),'YYYY-MM-DD HH:MI:SSXFF PM TZR') Timestamp
FROM DUAL;
返回結(jié)果:
+------------------------------------------------------+
| Timestamp |
+------------------------------------------------------+
| 2020-02-25 11:00:00.000000000 AM America/Los_Angeles |
+------------------------------------------------------+
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: