如何在 SQL 中将天数与时间一起添加到日期列

Puj*_*haw 4 sql oracle

我想将 1 天与时间一起添加到 read_date 列。

下面是示例列数据

read_date
-----------------------
01-01-19 01:00:00.000000000 AM


Expected Result
---------------------
02-01-19 01:00:00.000000000 AM
Run Code Online (Sandbox Code Playgroud)

我在下面尝试过,但它只添加日期而不是时间。

select read_time, read_time+1
from meter_read_alert

read_date                           read_date+1
------------------------------------------------------
01-01-19 12:00:00.000000000 AM      02-01-19
01-01-19 01:00:00.000000000 AM      02-01-19
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 5

当您使用时+ 1,timestamp会转换为date. 这就是为什么您只看到日期(a 的默认表示形式date不包括时间部分,尽管它存在)。

相反,使用interval:

select read_time, read_time + interval '1' day
from meter_read_alert;
Run Code Online (Sandbox Code Playgroud)

附言。我从中学到了一些东西。有趣的问题。

  • “*这就是为什么你只看到日期*” - 不,她看不到时间部分的原因是 Oracle 工具的令人讨厌的默认行为,即不显示“DATE”值的时间部分。https://i.imgur.com/krLIdrE.png (5认同)
  • `current_timestamp + 1` 不仅仅给出“15.08.2019”,还包含小时、分钟和秒部分。 (3认同)