我有一个表格,我在创建产品详细信息时输入最低价格和最高价格。在产品搜索中,我还有两个名为min和max的字段。那么考虑到插入产品时给出的范围,我怎样才能得到给定范围的结果
产品
min max
10 15
15 30
20 30
在搜索表单中,我将min插入5,最大值为16.我将在结果中得到哪些产品,并考虑实际情况,找出最佳的搜索理论。
答案 0 :(得分:3)
比较每个范围的两端以找到重叠中的产品:
select * from products
where min < $max and max > $min
此方法也适用于日期范围。
答案 1 :(得分:1)
select * from products where min>=5 and max<=16
基于此,你将得到
行 - &gt; 10,15
答案 2 :(得分:0)
BETWEEN 运算符选择两个值之间的数据范围。值可以是数字,文本或日期。
例如:
SELECT * FROM Product
WHERE price
BETWEEN $min AND $max