You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用SQL判断数值是否存在于两列的数值范围中

解决方案

假设你的表名为your_table,输入参数为@input_value,可以用以下SQL查询实现需求:

SELECT EXISTS (
    SELECT 1
    FROM your_table
    WHERE 
        a = @input_value 
        OR b = @input_value 
        OR (@input_value BETWEEN a AND b)
) AS result;

逻辑说明

  • a = @input_value:检查输入值是否直接存在于a列
  • b = @input_value:检查输入值是否直接存在于b列
  • @input_value BETWEEN a AND b:检查输入值是否落在a到b的闭区间内(等价于@input_value >= a AND @input_value <= b)
  • EXISTS关键字会在找到任意符合条件的行时返回true,无匹配行时返回false,完全匹配你给出的测试要求:输入1、3、7返回true,输入15返回false

测试验证

对应你的测试场景:

  • 输入1:若表中存在a=1/b=1的行,或某行区间包含1,查询返回true
  • 输入3:若表中存在区间覆盖3(比如a=2,b=4)的行,或3存在于a/b列,查询返回true
  • 输入7:若表中存在区间覆盖7(比如a=6,b=8)的行,查询返回true
  • 输入15:无匹配的列值或区间,查询返回false

内容的提问来源于stack exchange,提问作者Kar B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 06:32:33