ホームページ > データベース > mysql チュートリアル > MS SQL Serverの「BETWEEN」演算子には境界値が含まれますか?

MS SQL Serverの「BETWEEN」演算子には境界値が含まれますか?

Patricia Arquette
リリース: 2024-12-26 14:20:12
オリジナル
658 人が閲覧しました

Does MS SQL Server's `BETWEEN` Operator Include Boundary Values?

境界値は MS SQL Server の "between" 演算子に適用されますか?

MS SQL Server の "between" 演算子は次のように包括的です。 Books Online で定義されています。これは、下限 (「begin_expression」) 以上、および上限 (「end_expression」) 以下の値が結果セットに含まれることを意味します。

例:クエリは、「foo」列に 5 から 10 までの値が含まれるすべての行を選択します:

SELECT foo
FROM bar
WHERE foo BETWEEN 5 AND 10
ログイン後にコピー

DateTime考慮事項

DateTime 値を使用する場合、「間」の比較では日付部分のみが考慮されることに注意することが重要です。正確な結果を保証するには、終了日の時刻コンポーネントを午前 0 時から 3 ミリ秒前に指定する必要があります。これにより、終了日の範囲内にある値のデータ損失や重複が防止されます。

たとえば、「myDateTime」列に 2016 年 6 月以内の値が含まれるすべての行を取得するには、次のクエリを使用します。

WHERE myDateTime BETWEEN '20160601' AND DATEADD(millisecond, -3, '20160701')
ログイン後にコピー

Datetime2 と Datetimeoffset操作

datetime2 または datetimeoffset データ型を使用する場合は、3 ミリ秒を減算する代わりに、次のより単純で正確なアプローチを使用することをお勧めします。

WHERE myDateTime >= '20160601' AND myDateTime < '20160701'
ログイン後にコピー

以上がMS SQL Serverの「BETWEEN」演算子には境界値が含まれますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート