0

日時タイプにdatediffを使用するのに、次のうちどれが好ましい方法か疑問に思いました。

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

いくつかのケースで試してみたところ、すべて同じ答えが返されましたが、エラーが発生する可能性があるのではないかと心配しています。

datediffは、2つの日時タイプ間の日数を見つける正しい方法ですか?

4

2 に答える 2

1

与えられた:

  • datediff内部でパラメータを現在までキャストします
  • now()日付へのキャストはと同じですcurrent_date

これらの組み合わせのいずれの間でも結果に違いはありません。

于 2012-11-26T04:45:45.207 に答える
1

あなたの目的のために、それらはすべて同等です。

current_dateはDATE型を返し、now()はDATETIMEを返します

ただし、この場合、datediff()はDATETIMEの時間部分を無視するため、これは問題ではありません。したがって、datediff()でDATEとDATETIMEを使用することは完全に同等です。

于 2012-11-26T04:44:36.600 に答える