oracle sql

tvmytwxo  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(267)

有可能这样做吗?

SELECT
    TO_CHAR(SYSDATE-1, 'MM-DD-YYYY 08:00:00') "Yesterday",

我想要昨天早上8点的系统日期

k0pti3hp

k0pti3hp1#

你可以这样写:

trunc(sysdate - 1) + interval '8' hour

或:

trunc(sysdate) - interval '16' hour

或者可以使用整数值而不是间隔来进行日期算术:

trunc(sysdate) - 16/24
k3bvogb1

k3bvogb12#

截断sysdate。这将删除日期的时间部分。
再加上8/24(24的8小时),8/24等于1/3-8小时是一天的三分之一。
然后以dd mon yyyy hh24:mi:ss格式显示此日期值。
所有这些加起来就是:

SELECT TO_CHAR(TRUNC(SYSDATE) - 1 + 1/3,'DD-MON-YYYY HH24:MI:SS') FROM DUAL;

相关问题