ブール値モードで MySQL 全文検索を使用する場合、演算子として使用される + や - などの特定の文字があります。「C++」などを検索すると、+ が演算子として解釈されます。これらの特殊文字を処理するためのベスト プラクティスは何ですか?
私が現在使用している方法は、データ内のすべての + 文字を _plus に変換することです。また、&、@、/、および # 文字をテキスト表現に変換します。
ブール値モードで MySQL 全文検索を使用する場合、演算子として使用される + や - などの特定の文字があります。「C++」などを検索すると、+ が演算子として解釈されます。これらの特殊文字を処理するためのベスト プラクティスは何ですか?
私が現在使用している方法は、データ内のすべての + 文字を _plus に変換することです。また、&、@、/、および # 文字をテキスト表現に変換します。
MySQL の全文検索をうまく使ってこれを行う方法はありません。あなたがしていること(特殊文字を事前定義された文字列に置き換えること)は、それを行う唯一の方法です。
代わりにSphinx Searchの使用を検討してください。どうやら特殊文字のエスケープをサポートしており、すべてのレポートで、デフォルトの全文検索よりも大幅に高速です。