请提供帮助建议。
我有一张桌子。
id|score_max|score_min| segment
--|---------|---------|--------
1 |264 | |girl
2 |263 | 250 |girl+
3 |249 | 240 |girl
4 | | 239 |girl
没有必要根据分数的值来获得值。但它可以为null。
例如,260是来自其他表的值
select segment
from mytable
where score_max<260 and score_min>260
输出:
2 |263 | 250 |girl+
但如果值=200,则sql不是正确的
如何正确提出请求?
对于这个更有意义的示例数据:
id|score_max|score_min| segment
--|---------|---------|--------
1 | | 264 |girl
2 |263 | 250 |girl+
3 |249 | 240 |girl
4 |239 | |girl
你可以这样得到你想要的结果:
select *
from tablename
where
(? >= score_min or score_min is null)
and
(? <= score_max or score_max is null)
将?
替换为您搜索的值
请参阅演示