mysql - sphinx查询 "中国" 时也能查询到 "中华人民共和国"
怪我咯
怪我咯 2017-04-17 14:46:44
0
3
610

sphinx初学者,有个疑问,之前没学sphinx的时候以为:
查询 "中国" 时也能查询到 "中华人民共和国"
查询 "大姨妈" 时也能查询到 "例假"
查询 "苹果" 时也能查询到 "iPhone"
类似这样的还有很多,网上没有找到相关的文章,不知该搜索什么关键词,所以在这里请教诸位,谢谢咯~~~
如果支持,希望提供思路或操作步骤

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(3)
伊谢尔伦

據我了解是不行的,因為sphinx是檢索引擎+coreseek是中文分詞功能,應該不具備這樣的功能。

在sphinx.conf設定檔裡也沒看到相關,所以如果想要你所說的功能,應該是用其他的插件。

如果是純粹提供一個思路的話:
我們搜尋出來的結果都不是直接展示出來的,而是要透過一個權重判斷(增加權重字段),例如與中國相關的這些詞中,權重最高的是中華人民共和國。其他字也是一樣,這樣子應該能完成你想要得效果,純粹mysql實作還比較容易,但在sphinx中比較難,因為它檢索的邏輯都定死的。

刘奇

想太多了。 sphinx只是根據關鍵字檢索。近義詞和相關詞都是手動設計和智慧機器學習來的。

PHPzhong

這個叫搜尋重寫,最簡單的方式是做一個別名表,先分詞 -> 取別名 -> 歸一化 -> 交給sphinx 查詢。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!