最接近的值需要关于以下搜索功能优化的查询为了通过在MySQL
产品表
Product att1 att2 att3 att4 att5
p1 1 2 2 3 2
p2 4 1 1 5 5
p3 5 3 5 3 2
p4 4 4 2 1 1
如果用户搜索ATT1 = 3,ATT2 = 2和ATT3 = 5
然后,我们需要按照所有必需属性的最大可能 评级顺序显示所有记录
注意: - 在第一行中,只有一个pos sible匹配找到。 - 在第二行没有找到, - 在第三排一个找到匹配
因此,基于匹配的数量,我们需要订购的记录, 如果没有找到准确的匹配,然后在搜索 元素放松
也许搜索不是通过'='而是通过'attx> = queryValue - lowRange AND attx <= queryValue + highRange'进行搜索,并将计算的字段添加到等于'attx - queryValue AS distancex',该字段将包含匹配距指定值的距离,您可以使用它进行排序。 – Yaniro 2012-03-12 08:29:43