0

我想知道以下哪一项是将 datediff 用于日期时间类型的首选方法。

  1. datediff(current_date, <datetime type>)
  2. datediff(current_date, date(<datetime type>))
  3. datediff(now(), <datetime type>)

我在几个案例中尝试了它们,它们都返回了相同的答案,但我担心它们可能会产生一些错误。

datediff 是查找两种日期时间类型之间天数的正确方法吗?

4

2 回答 2

1

出于您的目的,它们都是等效的。

current_date 返回 DATE 类型,而 now() 返回 DATETIME

不过,在这种情况下这并不重要,因为 datediff() 忽略了 DATETIME 的时间部分,因此将 DATE 和 DATETIME 与 datediff() 一起使用是完全等价的。

于 2012-11-26T04:44:36.600 回答
1

鉴于:

  • datediff在内部将参数转换为日期
  • now()投射到日期与current_date

任何这些组合之间的结果应该没有差异

于 2012-11-26T04:45:45.207 回答