我需要采用昨天的值,例如:
18-11-2018 06:00:00
select (systimestamp - 1) as ts_bytes from dual;
时间固定的地方。
答案 0 :(得分:1)
我认为您正在寻找这个:
select TRUNC(systimestamp - 1) + INTERVAL '6' HOUR as ts_bytes
from dual;
或
TRUNC(systimestamp) - INTERVAL '18' HOUR
或者如果您更喜欢DATE
值而不是TIMESTAMP
select TRUNC(SYSDATE - 1) + 6/24 as ts_bytes
from dual;
答案 1 :(得分:0)
如果要在昨天的午夜(00:00:00)进行操作,则将当前时间戳截断为今天的开始,然后减去一天:
SELECT TRUNC(SYSTIMESTAMP) - INTERVAL '1' DAY as ts_bytes
FROM DUAL;
如果您想要特定的HH:MM:SS时间,请在该时间加上一个间隔:
SELECT TRUNC(SYSTIMESTAMP) - INTERVAL '1' DAY + INTERVAL '12:34:56' HOUR TO SECOND as ts_bytes
FROM DUAL;
答案 2 :(得分:0)
Select to_char(trunc(sysdate-1),’dd-mm-yyyy’)||’ 06:00:00’ as tyme from dual;
这很有趣,但应该可以。