先建一个测试表方便大家理解
当查询时只给一个最小值时:
请求:{“min”:2000 , "max": null }
select *
from test_1
WHERE max>=2000;
如例子中因为你要获得的内容是最小不超过2000的数据,所以数据中的最大值不能小于你的最小请求值。
-------------------------------------------------------------------------------------------------------------------------
当查询时只给一个最大值时:
请求:{“min”:null , "max": 1500 }
select *
from test_1
WHERE min>=1500;
同样你传入最大值时,数据的最小值不能小于你的最大值
-------------------------------------------------------------------------------------------------------------------------
当查询某个数值范围时:
请求:{“min”:1000 , "max": 2000 }
select *
from test_1
WHERE not( min > 2000 or max < 1000);
这里我们用到了not(),因为如果你想把所有可能性写出来,第一可能会漏掉,第二条件会很多。