Mysql 查找给定数字的查询属于给定表中的任何范围
我有一张桌子Mysql 查找给定数字的查询属于给定表中的任何范围,mysql,sql-server,database,Mysql,Sql Server,Database,我有一张桌子 Name(String) fromRange(int) toRange(int) abc 15160 15180 bhy 12510 12515 现在当我输入数字为12514时 我的数据库查询应该返回 表示它属于以下范围的值 12510至12515或 它属于以下bhy名称 场景2 如果我输入12530,它应该返回0,表示它不是任何范围的一部分 场景3 如果我进入
Name(String) fromRange(int) toRange(int)
abc 15160 15180
bhy 12510 12515
现在当我输入数字为12514时
我的数据库查询应该返回
表示它属于以下范围的值
12510至12515或
它属于以下bhy名称
场景2
如果我输入12530,它应该返回0,表示它不是任何范围的一部分
场景3
如果我进入15160。它应该返回以下范围,即15160到15180
我曾想过使用BETWEEN关键字,但没有成功
我正在使用SQL server数据库,有人能帮我进行类似的查询吗
DECLARE @input INT
SELECT @input = 15160
SELECT *
FROM your_table
WHERE
input BETWEEN fromRange AND toRange
像这样的
DECLARE @input INT
SELECT @input = 15160
SELECT *
FROM your_table
WHERE
input BETWEEN fromRange AND toRange
是否在范围内
如果输入在范围内将为1
,否则为0
is_in_range
将1
如果输入在范围内,0
否则您所说的“它应该返回0”是什么意思?0行或重设这一列中的0?0表示没有结果或任何其他等效语句,我可以使用它..你说“它应该返回0”是什么意思?0行或重新设置这一列,其中包含0?0表示没有结果或任何其他等效语句,我可以使用它。@input将是数字,我无法将其分配给名称请检查是否已更新。据我所知,你只需要简单的查询。我唯一的问题是关于返回0。工作非常完美。我使用了您的_表中的SELECT*,其中fromRange和toRange之间的15160将是数字输入,我无法将其分配给名称请检查更新。据我所知,你只需要简单的查询。我唯一的问题是关于返回0。工作非常完美。我使用了SELECT*从您的_表中选择,其中15160介于fromRange和toRange之间