鍍金池/ 問答/Java  網絡安全/ 根據命中率進行排序

根據命中率進行排序

現在的情況:搜索使用match_phrase進行查詢,根據公司的注冊資金進行排序。
存在問題:如果打錯一個字,就搜索不出想要的結果。如:搜“萬刻企業(yè)股份有限公司”,就搜索不到“萬科企業(yè)股份有限公司”

目的:進行模糊搜索,但是要把全部命中的排在前面,命中90%接著100%的后面,命中80%接著90%后面。

用solr就可以實現,ES不知如何實現。求社區(qū)大神解答。

回答
編輯回答
舊螢火

首先不應該用 match_phrase 進行搜索, match_phrase 是為了搜索一些精確的短語的關鍵詞搜索,所以每一個詞都會被當做必須要匹配的詞.

這里可以考慮使用match來進行搜索,使用類似于ik-analyzer這類中文分詞器進行分詞

2018年8月30日 02:09