Oracle 合并某一日期 和 sysdate的时间部分
开发过程中有一个需求是 将某一个日期 和现在的时间合并成一个新的 datetime
想到了两个方法:
方法 A: 合并字符串
SELECT to_date( (to_char(olddate,'yyyy-mm-dd') || to_char(SYSDATE,'HH24:MI:SS')),'yyyy-mm-dd hh24:mi:ss') FROM dual
方法 B: 日期差
Select trunc(olddate - trunc(SYSDATE,'dd')) + SYSDATE FROM dual
使用此方法时第一个sysdate必须使用trunc,否则时间部分将会参与运算,导致日期相差一天,而日期差等于0
最后选择使用了方法B。如有更好的方法 希望一起讨论。

浙公网安备 33010602011771号