時刻部分を無視した DATETIME と DATE の比較
SQL Server では、日付を表す 2 つの DATETIME2(0) 列を比較するのが困難な場合があります日付部分 (日、月、年) のみに関心がある場合。時間部分 (時、分、秒) は、比較で不一致を引き起こす可能性があります。
これに対処するために、SQL Server 2008 では、異なるデータ型間の変換を可能にする CAST 関数が導入されました。 CAST 関数を使用して DATETIME2(0) 列を DATE データ型にキャストすると、時刻部分が事実上破棄され、日付部分のみが比較用に残ります。
次の例は、のみに基づいて 2 つのレコードを比較する方法を示しています。 Date 部分:
IF CAST(DateField1 AS DATE) = CAST(DateField2 AS DATE)
DateField1 と DateField2 の両方を DATE データ型にキャストすることにより、比較では、日、月、年のコンポーネント。時間の違いは無視されます。これにより、レコードの時刻部分に関係なく、日付部分が同一になることが保証されます。
以上がSQL Server の DATETIME2 列の日付部分のみを比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。