BETWEEN在 WHERE 子句中使用,用来 选取两个值之间的数据 。这些值可以是数值、 文本 或者日期。
语法
SELECT 列FROM 表
WHERE 列
BETWEEN value1 AND value2
表:
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 |
例
现在需要以字母顺序显示 介于 "Adams"(包括)和 "Carter"( 不包括 )之间 的人,可使用下面的语句:
SELECT * FROM Persons
WHERE LastName
BETWEEN 'Adams' AND 'Carter'
结果:
Id |
LastName |
FirstName |
Address |
City |
1 |
Adams |
John |
Oxford Street |
London |
2 |
Bush |
George |
Fifth Avenue |
New York |
注: 某些数据库会列出介于 "Adams" 和 "Carter" 之间的人,但 不包括 "Adams" 和 "Carter" ;
某些数据库会列出介于 "Adams" 和 "Carter" 之间并 包括 "Adams" 和 "Carter" 的人;
而另一些数据库会列出介于 "Adams" 和 "Carter" 之间的人, 包括 "Adams" , 但不包括 "Carter" 。
所以在 使用之前 ,请检查你的数据库是如何处理 BETWEEN....AND 操作符的!
例
如果需要显示上面例子范围之外的人,可使用 NOT 操作符:
SELECT * FROM Persons
WHERE LastName
NOT BETWEEN 'Adams' AND 'Carter'
结果集:
Id |
LastName |
FirstName |
Address |
City |
3 |
Carter |
Thomas |
Changan Street |
Beijing |
4 |
Gates |
Bill |
Xuanwumen 10 |
Beijing |