mysql - sphinx查詢 "中國" 時也能查詢到 "中華人民共和國"
問題描述
sphinx初學(xué)者,有個疑問,之前沒學(xué)sphinx的時候以為:查詢 '中國' 時也能查詢到 '中華人民共和國'查詢 '大姨媽' 時也能查詢到 '例假'查詢 '蘋果' 時也能查詢到 'iPhone'類似這樣的還有很多,網(wǎng)上沒有找到相關(guān)的文章,不知該搜索什么關(guān)鍵詞,所以在這里請教諸位,謝謝咯~~~如果支持,希望提供思路或操作步驟
問題解答
回答1:據(jù)我了解是不行的,因為sphinx是檢索引擎+coreseek是中文分詞功能,應(yīng)該不具備這樣的功能。
在sphinx.conf配置文件里也沒看到相關(guān),所以如果想要你所說的功能,應(yīng)該是用其他的插件。
如果是純粹提供一個思路的話:我們搜索出來的結(jié)果都不是直接展示出來的,而是要通過一個權(quán)重判斷(增加權(quán)重字段),例如與中國相關(guān)的這些詞中,權(quán)重最高的是中華人民共和國。其他詞語也是一樣,這樣子應(yīng)該能完成你想要得效果,純粹mysql實現(xiàn)還比較容易,但在sphinx中比較難,因為它檢索的邏輯都定死的。
回答2:想多了。sphinx只是根據(jù)關(guān)鍵詞檢索。近義詞和相關(guān)詞都是手動設(shè)計和智能機器學(xué)習(xí)來的。
回答3:這個叫搜索重寫,最簡單的方式是做一個別名表,先分詞 -> 取別名 -> 歸一化 -> 交給sphinx 查詢。
相關(guān)文章:
1. mysql - Sql union 操作2. mysql主主同步,從庫不同步應(yīng)該怎么解決?3. macOS Sierra 10.12 安裝mysql 5.7.1出現(xiàn)錯誤4. android - 安卓做前端,PHP做后臺服務(wù)器 有什么需要注意的?5. mysql 獲取時間函數(shù)unix_timestamp 問題?6. mysql - 拖拽重排序后怎么插入數(shù)據(jù)庫?7. mysql - 僅僅只是把單引號與反斜杠轉(zhuǎn)義不用prepare statement能否避免sql注入?8. 新入手layuiadmin,部署到tp中。想用php自已寫一個后臺管理系統(tǒng)。9. mysql在限制條件下篩選某列數(shù)據(jù)相同的值10. php - 生產(chǎn)環(huán)境下,給MySQL添加索引,修改表結(jié)構(gòu)操作,如何才能讓線上業(yè)務(wù)不受影響?
