没有小时、分钟、秒的 Oracle current_date 或 sysdate [重复]

Posted

技术标签:

【中文标题】没有小时、分钟、秒的 Oracle current_date 或 sysdate [重复]【英文标题】:Oracle current_date or sysdate without hours, minutes, seconds [duplicate] 【发布时间】:2013-03-30 19:46:34 【问题描述】:

在使用current_datesysdate 时,有什么办法可以摆脱一天中的时间。我试图只将日期存储为 YYYY-MM-DD ,但 current_date 给了我 YYYY-MM-DD HH:MM:SS:MS

或者在比较日期时,它只比较日期而不是时间。任何帮助都会很棒,谢谢。

【问题讨论】:

相关:***.com/q/7604167/1065197 时间格式HH:MM:SS:MS错误。 MM 代表数字月份(MS 也无法识别)。应该是HH:MI:SS。如果您需要毫秒,则需要使用 TIMESTAMP 数据类型,因为 Oracle 仅将直到秒的分数存储在 DATE 类型字段中。 在 Oracle 中,DATE 数据类型包含字段 YEAR、MONTH、DAY、HOURS、MINUTES 和 SECONDS。 Oracle 中没有仅存储 YEAR、MONTH 和 DAY 字段的数据类型。 【参考方案1】:

也许你应该试试

trunc(sysdate)

功能。

【讨论】:

将时间存储为 00:00:00 但仍然有效。谢谢。 是的,它仍然是日期类型,但本身没有确切的时间。 这对性能有什么影响?【参考方案2】:

Rusty 回答了您关于剥离时间部分的问题。比较日期时加入时间的部分通常是这样完成的。

where YourDateField >= StartDate
and YourDateField < TheDayAfterEndDate

如果要搜索特定日期,StartDate 和 EndDate 将是相同的。

【讨论】:

我真的很喜欢 StartDate &lt;= YourDateField and YourDateField &lt; TheDayAfterEndDate 有点像数学里的 x &lt;= y &lt; z

以上是关于没有小时、分钟、秒的 Oracle current_date 或 sysdate [重复]的主要内容,如果未能解决你的问题,请参考以下文章

MySql日期加天数,小时,分钟...得到新的时间

Flutter:显示天、小时、分钟和秒的倒计时小部件

oracle 计算两个时间相差的时分秒

在 Excel 中将时间格式化为天、小时、分钟和秒的更好方法?

学习历程简单实现秒转换成对应天 小时 分钟 秒的代码

学习历程简单实现秒转换成对应天 小时 分钟 秒的代码