确定某个表达式的值是否属于指定范围内的值。 可以在 SQL 语句中使用此运算符。
语法
expr [Not] Betweenvalue1Andvalue2
Between...And 运算符语法包含以下部分:
部分 |
说明 |
expr |
一个表达式,标识包含要进行求值的数据的字段。 |
value1, value2 |
要针对其对 expr 进行求值的表达式。 |
备注
如果 expr 的值介于 value1 和 value2 之间(含 value1 和 value2),则 Between...And 运算符将返回“True”;否则返回“False”。 可包括 Not 逻辑运算符,以计算相反情况(即,expr 是否位于 value1 和 value2 定义的范围之外)。
可以使用 Between...And 来确定某一字段的值是否属于指定数值范围内。 以下示例确定订单是否被运送到某一邮政编码范围内的位置。 如果邮政编码介于 98101 和 98199 之间,则 IIf 函数返回“Local”。 否则返回“Nonlocal”。
SELECT IIf(PostalCode Between 98101 And 98199, “Local”, “Nonlocal”) FROM Publishers
如果 expr、value1 或 value2 为 Null,则 Between...And 返回 Null 值。
由于 通配符 (如 *)被视为文本,因此不能将它们与 Between...和 运算符。 例如,不能使用 980* 和 989* 查找以 980 到 989 开头的所有邮政编码。 相反,有两种实现此目的的替代方法。 可以向查询添加一个表达式,该表达式采用文本字段的左三个字符,并使用 Between...在这些 字符上。 或者,可以使用额外的字符填充高值和低值-在本例中为 98000 到 98999;如果使用扩展邮政编码,则为 98000 到 98999 - 9999。 (您必须从低值中省略 – 0000,因为否则如果某些邮政编码有扩展部分,而其他邮政编码没有,则删除 98000。)