簡體   English   中英

使用SQL和C#檢查數字是否在范圍之間

[英]Check if a number is between a range using SQL & C#

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

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#從特定行中獲取信息,我不知道怎么做是檢查整個表以查看如果數字在ranges列之間。

如果范圍值是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

編輯-可變范圍的CharIndex()選項

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM