如何在localdb时间戳列4小时后更改小时部件。
我有一张桌子JOB_MONITOR
JOBID JOB_TYPE JOB_STATS START_DATE
3 BIN Management SUCCESSFUL 3/15/2018 5:50:29.269000 PM我想把START_DATE值设置为4小时,就像2018年3月15日下午1:50:29.269000
我的服务器在圣路易斯,所以当我使用sysdate-4/24进行时。它更新关于圣路易斯时区的列值,类似于3/15/2018 4:42:26.426000我不想要的AM..which。希望现在的问题对每个人都很清楚。
我想将START_DATE值设置为4小时,而不管时区如何。只需减去4小时。我需要这个条件在本地测试数据。
发布于 2018-03-16 07:52:53
也不太清楚你在问什么,但我想你是在找这个:
update jobmonitor set starttime = starttime - 4/24;发布于 2018-03-16 09:10:45
用户本地关键字和systimestamp以获取本地日期:
SQL> column server_date format a20
SQL> column local_time format a20
SQL> column local_time_4hrs_back format a20
SQL> SELECT SYSDATE server_date, cast(SYSTIMESTAMP AT LOCAL AS DATE) local_time, CAST(SYSTIMESTAMP AT LOCAL AS DATE) - 4/24 AS local_time_4hrs_back FROM dual;输出:
SERVER_DATE LOCAL_TIME LOCAL_TIME_4HRS_BACK
-------------------- -------------------- --------------------
3/16/2018 5:08:59 3/16/2018 14:38:59 3/16/2018 10:38:59https://stackoverflow.com/questions/49315486
复制相似问题