c# - 使用 SQL 和 C# 检查数字是否在某个范围内

标签 c# sql sql-server t-sql

我有一个包含以下信息的表格:

ID   Name                  Range          Checked
1    Jennifer             000-100           0
2    Louis                101-200           0
3    Michael              201-300           0

范围是他们拥有的票数,勾选的栏是已经使用的票数。

我想要做的是在使用票证时将+1添加到已检查列中,因此我想检查票证所属的位置。我的意思是,如果我使用 103 号票,我想在第 2 行检查的列中添加 1。如果我使用更多票,则依此类推。

ID   Name                  Range          Checked
1    Jennifer             000-100           0
2    Louis                101-200           1
3    Michael              201-300           0

那么,有没有办法检查我提交的工单是否在其中一个范围内?

PD.:我知道如何在 SQL 中检查一个数字是否在两个数字之间,并且我也知道如何使用 C# 从特定行获取信息,但我不知道如何检查整个表以查看数字是否在范围列之间。

最佳答案

如果范围值是 3 位数字,则 left() 和 right() 就可以完成任务,而无需找到破折号。

示例

Update YourTable 
   Set Checked=Checked+1
 Where 103 between left(Range,3) and Right(Range,3)

Select * from YourTable

结果

ID  Name        Range     Checked
1   Jennifer    000-100   0
2   Louis       101-200   1
3   Michael     201-300   0

EDIT - CharIndex() option For Variable Ranges

Update @YourTable 
   Set Checked=Checked+1
 Where 103 between left(Range,charindex('-',Range+'-')-1) and Right(Range,len(Range)-charindex('-',Range+'-'))

关于c# - 使用 SQL 和 C# 检查数字是否在某个范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43959105/

相关文章:

sql-server - 无法执行请求的操作,因为链接服务器 'MSOLAP' 的 OLE DB 提供程序 'SSAS' 不支持所需的接口(interface)

javascript - 将数据从 http 请求传递到 C# Controller

c# - MiniProfiler所需的Mini-Profiler-Resource文件夹从哪里获取?

c# - 如何最小起订量使用工作单元和存储库模式的简单添加功能

php - WordPress 帖子元赞查询无法识别第二个赞语句

c# - 具有多个未知条件的Where子句

sql - T-SQL 使用变量从 xml 中检索 sql 属性

c# - 如何获得两个城市之间的最低票价

mysql - 如何进行表连接,其中组合键是访问号码和日期 +/- 1 天

MySQL tinyint 到 bool 值