毫秒的日期/時間,我定義爲DATE
場甲骨文 - 獲取從DATE數據類型字段
我想以毫秒爲單位獲取時間last_update_date
列。
目前我有:
TO_CHAR(last_update_date,'YYYY-DD-MM hh:mi:ss am')
但我想毫秒爲好。
我GOOGLE了一下,認爲DATE
字段將不會有毫秒。字段將只有TIMESTAMP
。
有沒有辦法得到毫秒?我沒有選擇更改該字段的數據類型。
毫秒的日期/時間,我定義爲DATE
場甲骨文 - 獲取從DATE數據類型字段
我想以毫秒爲單位獲取時間last_update_date
列。
目前我有:
TO_CHAR(last_update_date,'YYYY-DD-MM hh:mi:ss am')
但我想毫秒爲好。
我GOOGLE了一下,認爲DATE
字段將不會有毫秒。字段將只有TIMESTAMP
。
有沒有辦法得到毫秒?我沒有選擇更改該字段的數據類型。
Oracle上的DATE字段只能將數據存儲到一秒鐘,因此無法提供更精確的數據。如果您想要更高精度,則必須使用其他類型,例如TIMESTAMP。
Here是另一個關於Oracle日期和時間精度的SO問題的鏈接。
正如RC所說,DATE類型只支持第二個粒度。
如果轉換爲TIMESTAMP確實不是一個選項,那麼如何增加另一個數字列只能保持毫秒?
與TIMESTAMP列相比,該選項處理起來更麻煩,但如果轉換類型不可行,則可行。
在類似的情況下,我無法更改表中的字段(無法'打破'第三方軟件),但需要亞秒精度,我添加了1:1補充表,和原始表格上的後插入觸發器將時間戳記發佈到補充表格中。
如果您只需要知道在同一秒內添加的記錄的ORDER,則可以做同樣的事情,只使用序列作爲補充字段的數據源。