ステムを含む MySQL フルテキスト
-
20-09-2019 - |
質問
自分のサイトに小さな検索機能を構築しています。ユーザーのクエリを取得し、キーワードをステミングし、ステミングされたキーワードに対して MySQL の全文検索を実行しています。
問題は、MySQL がステムをリテラルとして扱っていることです。起こっているプロセスは次のとおりです。
- ユーザーが「野球」のような単語を検索します
- 私のステミング アルゴリズム (ポーター ステマー) は「野球」を「野球」に変えます
- 「baseball」と「baseball」に一致するものがあるはずですが、全文検索では「basebal」に一致するものは見つかりません。
フルテキストで LIKE 'basebal%' と同等のことを行うにはどうすればよいですか?
編集:
私の現在のクエリは次のとおりです。
SELECT MATCH (`title`,`body`) AGAINST ('basebal') AS `relevance`,`id` FROM `blogs` WHERE MATCH (`title`,`body`) AGAINST ('basebal') ORDER BY `relevance` DESC
解決
basebal*
:私はそれが最後にアスタリスクで動作すると思います。詳細は、このページをrel="noreferrer"> href="http://dev.mysql.com/doc/refman/5.1/en/fulltext-boolean.html" *演算子を参照してください。
他のヒント
このリンクを参照してください。.. MySQLではデフォルトでインストールされていないステミングが、あなたはそれをあなたの自己をインストールすることができます..
所属していません StackOverflow