首頁 > 資料庫 > mysql教程 > MS SQL Server 的「BETWEEN」運算子是否包含邊界值?

MS SQL Server 的「BETWEEN」運算子是否包含邊界值?

Patricia Arquette
發布: 2024-12-26 14:20:12
原創
659 人瀏覽過

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

邊界值是否適用於 MS SQL Server 的「 Between」運算子?

MS SQL Server 中的「 Between」運算子是包容性的,如線上書籍中定義。這意味著大於或等於下限(“begin_expression”)且小於或等於上限(“end_expression”)的值將包含在結果集中。

例如,以下查詢將選擇「foo」列包含5 到10 之間的值的所有行,包括:

SELECT foo
FROM bar
WHERE foo BETWEEN 5 AND 10
登入後複製

DateTime注意事項

使用DateTime 值時,請務必注意,在「之間」比較中僅考慮日期部分。為了確保結果準確,您必須為結束日期指定午夜前 3 毫秒的時間分量。這可以防止結束日期範圍內的值出現任何資料遺失或重複。

例如,要檢索「myDateTime」列包含2016 年6 月內的值的所有行,您可以使用以下查詢:

WHERE myDateTime BETWEEN '20160601' AND DATEADD(millisecond, -3, '20160701')
登入後複製

Datetime2 和Datetimeoffset 操作

改為減去3 毫秒,建議在使用datetime2 或datetimeoffset 資料類型時使用以下更簡單、更準確的方法:

WHERE myDateTime >= '20160601' AND myDateTime < '20160701'
登入後複製

以上是MS SQL Server 的「BETWEEN」運算子是否包含邊界值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板