sql – 检查Integer是否在一系列列值之间
发布时间:2020-12-12 07:47:52 所属栏目:MsSql教程 来源:网络整理
导读:请考虑以下表模式: ----------------------------------| ID | MinValue | MaxValue |----------------------------------| 1 | 0 | 10 || 2 | 11 | 20 || 3 | 21 | 30 | 我希望能够传递一个整数,并让它返回适当的ID,其中该值与Min和Max Value之间的范围匹配
请考虑以下表模式:
---------------------------------- | ID | MinValue | MaxValue | ---------------------------------- | 1 | 0 | 10 | | 2 | 11 | 20 | | 3 | 21 | 30 | 我希望能够传递一个整数,并让它返回适当的ID,其中该值与Min和Max Value之间的范围匹配. 例如: Input = 17 Output = 2 Input = 4 Output = 1 Input = 26 Output = 3 我以为我可以这样做: SELECT ID FROM MyTable WHERE MinValue >= @input AND MaxValue <= @input 但它不起作用,没有任何返回. 我确信这个解决方案很简单,但我很难过. 在SQL Server中实现此目的的最佳方法是什么? 解决方法试试这个SELECT ID FROM MyTable WHERE @input BETWEEN MinValue AND MaxValue BEETWEEN的描述 SQL BETWEEN Condition用于检索SELECT,INSERT,UPDATE或DELETE语句中某个范围内的值. 句法 SQL BETWEEN条件的语法是: 表达BETWEEN value1和value2; 表达式是列或计算. value1和value2创建与表达式进行比较的包含范围. 注意 SQL BETWEEN Condition将返回表达式在value1和value2(包括)范围内的记录. ref:http://www.techonthenet.com/sql/between.php 或者你也可以使用喜欢 MinValue <= @input AND MaxValue >= @input (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- SQLServer2012转2008(高版本向低版本兼容)
- 更改SQL Server 2005数据库中tempdb位置的方法
- 用CASE WHEN实现sqlserver数据库的分类汇总功能
- SqlServer 2008相关知识
- sql-server – 轻松显示两个表或查询之间不同的行
- sql-server – WiX:数据库还原不会还原表和记录
- SqlServer 2005的排名函数使用小结
- 完美解决SQLserver 2000“指定的服务并未以已安装的服务存在
- ArcSDE for sqlserver2005 错误sqlstate:42000 NativeErro
- 执行sp_executeSql以选择…到#table但不能选择临时表数据