首頁 > 資料庫 > mysql教程 > SQL Server 的「BETWEEN」運算子是否包含開始值和結束值?

SQL Server 的「BETWEEN」運算子是否包含開始值和結束值?

Mary-Kate Olsen
發布: 2024-12-30 19:26:10
原創
319 人瀏覽過

Does SQL Server's `BETWEEN` Operator Include the Start and End Values?

MS SQL Server 的「Between」運算子是否包含範圍邊界?

MS SQL Server 中的 BETWEEN 運算符,顧名思義,檢查給定表達式是否落在指定範圍內。然而,一個常見的問題是:這個範圍包含還是排除邊界值?

答案是 BETWEEN 是一個包含運算符,這意味著它同時包含範圍的下限和上限。澄清一下:

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

此查詢將檢索 foo >= 5 且

如果 test_expression 的值大於或等於 begin_expression 的值且小於或等於 end_expression 的值,則 BETWEEN 傳回 TRUE。

日期時間注意事項

對於日期時間值,需要記住一個微妙的考慮因素。如果僅指定日期,則解釋為當天的午夜。為了避免遺失或重複時間值,建議使用不包括結束日期午夜之前 3 毫秒的範圍。

例如,要檢索2016 年6 月內的所有日期時間值:

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

這可確保範圍延伸到月底,而不包含7 月以來的任何值1st.

datetime2 和datetimeoffset

對於這些資料類型,使用 >= 和

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

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

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