2010-02-26 61 views
4

毫秒的日期/時間,我定義爲DATE甲骨文 - 獲取從DATE數據類型字段

我想以毫秒爲單位獲取時間last_update_date列。

目前我有:

TO_CHAR(last_update_date,'YYYY-DD-MM hh:mi:ss am') 

但我想毫秒爲好。

我GOOGLE了一下,認爲DATE字段將不會有毫秒。字段將只有TIMESTAMP

有沒有辦法得到毫秒?我沒有選擇更改該字段的數據類型。

回答

11

Oracle上的DATE字段只能將數據存儲到一秒鐘,因此無法提供更精確的數據。如果您想要更高精度,則必須使用其他類型,例如TIMESTAMP。

Here是另一個關於Oracle日期和時間精度的SO問題的鏈接。

3

正如RC所說,DATE類型只支持第二個粒度。

如果轉換爲TIMESTAMP確實不是一個選項,那麼如何增加另一個數字列只能保持毫秒?

與TIMESTAMP列相比,該選項處理起來更麻煩,但如果轉換類型不可行,則可行。

0

在類似的情況下,我無法更改表中的字段(無法'打破'第三方軟件),但需要亞秒精度,我添加了1:1補充表,和原始表格上的後插入觸發器將時間戳記發佈到補充表格中。

如果您只需要知道在同一秒內添加的記錄的ORDER,則可以做同樣的事情,只使用序列作爲補充字段的數據源。