ホームページ >データベース >mysql チュートリアル >SQL Server で時刻コンポーネントを無視して DATETIME 列を比較するにはどうすればよいですか?

SQL Server で時刻コンポーネントを無視して DATETIME 列を比較するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-27 01:51:09257ブラウズ

How Can I Compare DATETIME Columns Ignoring the Time Component in SQL Server?

DATETIME と日付部分のみの比較

一部のシナリオでは、2 つの DATETIME または DATE 列の日付部分のみを比較する必要があります。時間成分を無視します。この記事では、SQL Server を使用した実用的なソリューションを検討することで、この要件に対処します。

問題: 無視して日付部分 (日、月、年) のみに基づいて 2 つのレコードを比較するにはどうすればよいですか?時間の要素 (時、分、秒)?

解決策:

日付部分を分離して時刻コンポーネントを破棄するには、SQL Server の CAST 関数を利用します。この関数は、DATETIME または DATE 値を、DATE データ型を含む別のデータ型に変換します。

次のクエリについて考えてみましょう。

IF CAST(DateField1 AS DATE) = CAST(DateField2 AS DATE)

このクエリでは、CAST 関数は DateField1 と DateField1 と DATE の両方を変換します。 DateField2 を DATE データ型に変換します。次に、結果の DATE 値に対して比較が実行され、時間要素は事実上無視されます。日付が一致する場合、比較は true と評価されます。それ以外の場合は false と評価されます。この手法を使用すると、2 つのフィールドの日付部分のみに焦点を当てて比較することができます。

以上がSQL Server で時刻コンポーネントを無視して DATETIME 列を比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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