ホームページ >データベース >mysql チュートリアル >SQL Server の DATETIME2 列の日付部分のみを比較するにはどうすればよいですか?

SQL Server の DATETIME2 列の日付部分のみを比較するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-25 19:02:09530ブラウズ

How Can I Compare Only the Date Portion of DATETIME2 Columns in SQL Server?

時刻部分を無視した 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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。