【发布时间】:2022-01-13 18:55:01
【问题描述】:
Sysdate 返回当前系统日期和时间,其返回类型为日期。但是日期类型不应该只包含日期信息而不是时间信息。为什么这是可以接受的?
【问题讨论】:
-
Oracle 数据类型
DATE有点误导。事实上它总是包含日期+时间值。如果想跳过时间部分,请使用TRUNC(SYSDATE)。但是,它仍然有时间值,只是设置为00:00:00 -
The documentation for the
DATEdata type 表示“此数据类型包含日期时间字段 YEAR、MONTH、DAY、HOUR、MINUTE 和 SECOND”。你觉得哪一部分不可接受;DATE包括时间(这是一个非常早的决定,但具有误导性/混淆),或者SYSDATE返回一个DATE(这似乎是合理的),或者它返回的日期包括时间? (TIMESTAMP来晚了,再改DATE不包括时间已经来不及了……)