BETWEEN运算用于在范围内选择值。
运营商之间的SQL
的范围内的间操作员选择的值。 值可以是数字,文本,或日期。
SQL语法之间
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
演示数据库
在本教程中,我们将使用众所周知的Northwind示例数据库。
下面是从一个选择"Products"表:
ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
---|---|---|---|---|---|
1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18 |
2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 |
3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 |
4 | Chef Anton's Cajun Seasoning | 1 | 2 | 48 - 6 oz jars | 22 |
5 | Chef Anton's Gumbo Mix | 1 | 2 | 36 boxes | 21.35 |
BETWEEN操作符示例
下面的SQL语句选择所有产品均拥有10和20之间一口价:
not运算符样板间
要显示前一个例子范围之外的产品,使用NOT BETWEEN:
BETWEEN运营商,在例
下面的SQL语句将选择10和20之间价格的所有产品,但产品的1,2个类别ID,或3不应该显示:
运营商之间使用文本值示例
下面的SQL语句选择所有产品与ProductName与任何BETWEEN'C'和'M'字母开头的:
NOT BETWEEN操作使用文本值示例
下面的SQL语句选择所有产品与产品名称与任何字母NOT BETWEEN'C'和'M'的开始:
示例表
下面是从选择"Orders"表:
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10248 | 90 | 5 | 7/4/1996 | 3 |
10249 | 81 | 6 | 7/5/1996 | 1 |
10250 | 34 | 4 | 7/8/1996 | 2 |
10251 | 84 | 3 | 7/9/1996 | 1 |
10252 | 76 | 4 | 7/10/1996 | 2 |
运营商之间使用日期值示例
下面的SQL语句选择具有所有订单OrderDate间'04-July-1996'和'09-July-1996' :
请注意,BETWEEN运营商可以在不同的数据库产生不同的结果!
有些数据库之间进行选择是之间,不包括测试值的字段。
在其他的数据库,之间进行选择是之间并包括测试值的字段。
而在其他的数据库,之间进行选择的试验值之间的字段,包括所述第一测试值与不包括最后的测试值。
因此:检查你的数据库是如何处理BETWEEN运算!