共計 917 個字符,預計需要花費 3 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
今天就跟大家聊聊有關如何在 oracle 數據庫中獲取時間戳的無參函數,可能很多人都不太了解,為了讓大家更加了解,丸趣 TV 小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
代碼如下所示:
CREATE OR REPLACE FUNCTION GETMSTIMESTAMP
RETURN NUMBER
AS
MSTIMESTAMP NUMBER;
BEGIN
SELECT (SYSDATE-TO_DATE( 1970-1-18 , YYYY-MM-DD HH24)) * 86400000 + TO_NUMBER(TO_CHAR(SYSTIMESTAMP(3), FF )) INTO MSTIMESTAMP FROM DUAL;
RETURN MSTIMESTAMP;
END;
之后再 mapper 文件或者 pl/sql 等工具中用 select GETMSTIMESTAMP() as timestamp from dual;即可使用
獲得秒級時間戳:
SELECT (SYSDATE - TO_DATE( 1970-1-1 8 , YYYY-MM-DD HH24)) * 86400 FROM DUAL;
(SYSDATE-TO_DATE( 1970-1-1 8 , YYYY-MM-DDHH24))*86400
-----------------------------------------------------
1167040878
用當前的時間減去 1970 年 1 月 1 日 8 時,得到的天數乘以 24 小時乘以 3600 秒,得到的結果就是系統時間戳。這里用 8 時的原因時系統所處時區為東 8 區。
毫秒級時間戳:
SELECT (SYSDATE - TO_DATE( 1970-1-1 8 , YYYY-MM-DD HH24)) * 86400000 + TO_NUMBER(TO_CHAR(SYSTIMESTAMP(3), FF )) AS MILLIONS FROM DUAL;
看完上述內容,你們對如何在 oracle 數據庫中獲取時間戳的無參函數有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注丸趣 TV 行業資訊頻道,感謝大家的支持。
向 AI 問一下細節
正文完