最接近的值需要關於以下搜索功能優化的查詢爲了通過在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