如何获得4到8之间的数字。我想要的答案是5,6,7,但在SQL Server中使用时脚本返回4,5,6,7,8:
SELECT *
FROM table
WHERE numbers BETWEEN '4' AND '8'
答案 0 :(得分:13)
BETWEEN
具有包容性。来自MSDN:
如果test_expression的值大于,则BETWEEN返回TRUE 或者等于begin_expression的值并且小于或等于 end_expression的值。
由于它具有包容性,因此您需要使用大于和小于:
SELECT *
FROM yourtable
WHERE numbers > 4
AND numbers < 8
如果您想使用BETWEEN
运算符,则需要缩短范围:
SELECT *
FROM yourtable
WHERE numbers between 5 AND 7