基本的に次のように、日付を比較するSQLステートメントがあります。
date1=date2
タイムスタンプが異なるため、 date 1 == 08/10/2013 12:00 および date2 == 08/10/2013 13:00 の場合、問題は結果セットが返されないことです。タイムスタンプを無視してこれを行うにはどうすればよいですか?
ありがとう
基本的に次のように、日付を比較するSQLステートメントがあります。
date1=date2
タイムスタンプが異なるため、 date 1 == 08/10/2013 12:00 および date2 == 08/10/2013 13:00 の場合、問題は結果セットが返されないことです。タイムスタンプを無視してこれを行うにはどうすればよいですか?
ありがとう
多くのデータベースでは、これは機能します:
trunc(date1) = trunc(date2)
これにより、日付/時刻の値が切り捨てられ、日付だけが残ります。これは、日付フィールドを使用する Oracle および MySQL で機能する可能性があります。ただし、データベースとフィールドのタイプ (タイムスタンプと日付または日時) によって異なります。
SQL 2008 以降を想定
WHERE cast(date1 as date) = cast(date2 as date)
別のオプション (SQL Server を使用している場合)
WHERE DateDiff(day, date1, date2) = 0