在 SQL Server 中,BETWEEN
是一个操作符而不是一个函数,它用于指定一个范围内的值。BETWEEN
操作符可以用来筛选出落在两个值之间的数据行。其基本语法如下:
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
这里的 value1
和 value2
定义了范围的边界,它们可以是数值、日期或任何其他类型的数据,只要与列中的数据类型匹配即可。
示例:
假设你有一个名为 Orders
的表,其中包含一列 OrderDate
,该列存储订单的日期。如果你想找出在某个日期范围内的所有订单,你可以这样写查询:
SELECT OrderID, OrderDate, CustomerID
FROM Orders
WHERE OrderDate BETWEEN '2023-01-01' AND '2023-12-31';
这个查询会返回 Orders
表中所有在 2023 年内的订单记录。
注意事项:
- 包含性:
BETWEEN
操作符是包含性的,这意味着它包括value1
和value2
两端的值。 - 顺序:
value1
必须小于等于value2
,否则查询可能不会按预期工作。如果value1
大于value2
,则不会有任何结果被返回。 - NULL 值:如果列中有
NULL
值,那么这些行将不会被BETWEEN
操作符所匹配,因为NULL
不能与其他值进行比较。 - 使用 NOT BETWEEN:如果你想排除这个范围内的值,可以使用
NOT BETWEEN
:
SELECT OrderID, OrderDate, CustomerID
FROM Orders
WHERE OrderDate NOT BETWEEN '2023-01-01' AND '2023-12-31';
这个查询将返回 Orders
表中不在 2023 年内的所有订单记录。
请登录后查看回复内容