SQL BETWEEN 操作符
BETWEEN 操作符在 WHERE 子句中使用,作用是選取介于兩個值之間的數(shù)據(jù)范圍。
BETWEEN 操作符
操作符 BETWEEN ... AND 會選取介于兩個值之間的數(shù)據(jù)范圍。這些值可以是數(shù)值、文本或者日期。
SQL BETWEEN 語法
SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2
原始的表 (在實例中使用:)
Persons 表:
Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
3 | Carter | Thomas | Changan Street | Beijing |
4 | Gates | Bill | Xuanwumen 10 | Beijing |
BETWEEN 操作符實例
如需以字母順序顯示介于 "Adams"(包括)和 "Carter"(不包括)之間的人,請使用下面的 SQL:
SELECT * FROM Persons WHERE LastNameBETWEEN
'Adams'AND
'Carter'
結(jié)果集:
Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
重要事項:不同的數(shù)據(jù)庫對 BETWEEN...AND 操作符的處理方式是有差異的。某些數(shù)據(jù)庫會列出介于 "Adams" 和 "Carter" 之間的人,但不包括 "Adams" 和 "Carter" ;某些數(shù)據(jù)庫會列出介于 "Adams" 和 "Carter" 之間并包括 "Adams" 和 "Carter" 的人;而另一些數(shù)據(jù)庫會列出介于 "Adams" 和 "Carter" 之間的人,包括 "Adams" ,但不包括 "Carter" 。
所以,請檢查你的數(shù)據(jù)庫是如何處理 BETWEEN....AND 操作符的!
實例 2
如需使用上面的例子顯示范圍之外的人,請使用 NOT 操作符:
SELECT * FROM Persons
WHERE LastName
NOT
BETWEEN 'Adams' AND 'Carter'
結(jié)果集:
Id | LastName | FirstName | Address | City |
---|---|---|---|---|
3 | Carter | Thomas | Changan Street | Beijing |
4 | Gates | Bill | Xuanwumen 10 | Beijing |