Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server中的_Sql_Sql Server_Tsql - Fatal编程技术网

SQL Server中的

SQL Server中的,sql,sql-server,tsql,Sql,Sql Server,Tsql,如何得到4到8之间的数字。我想要的答案是5,6,7,但在SQL Server中使用时,脚本返回4,5,6,7,8: SELECT * FROM table WHERE numbers BETWEEN '4' AND '8' 之间的包含在内。从MSDN: 如果test_表达式的值大于 或等于begin_表达式的值且小于或等于 end_表达式的值 因为它是包容性的,所以您需要使用大于和小于: SELECT * FROM yourtable WHERE numbers > 4 AND

如何得到4到8之间的数字。我想要的答案是5,6,7,但在SQL Server中使用时,脚本返回4,5,6,7,8:

SELECT * 
FROM table
WHERE numbers BETWEEN '4' AND '8'

之间的
包含在内。从MSDN:

如果test_表达式的值大于 或等于begin_表达式的值且小于或等于 end_表达式的值

因为它是包容性的,所以您需要使用大于和小于:

SELECT * 
FROM yourtable
WHERE numbers > 4
   AND numbers < 8
请参见

如果这些是数字(数字数据类型),则不应将它们放在引号中!否则您将导致隐式转换-使用
而不是4到8之间的数字-根本不需要任何引号
'41'
'4'
'8'
之间,但是
41
不在
4
8
之间。不要威胁数字作为字符串,它们不是!
SELECT * 
FROM yourtable
WHERE numbers between 5 AND 7