web-dev-qa-db-ja.com

キーワード文字列でMySQL全文検索を使用する適切な方法は?

全文検索を実行したいキーワード文字列があります。

モデルの現在の検索クエリは次のとおりです。

$jinput = JFactory::getApplication()->input;
    $keyword = $jinput->get('keyword', '', 'NULL');
    if($keyword!=''){
         $keyword = $db->Quote('%' . $db->escape($keyword, true) . '%');
            $query->where('( a.title LIKE '.$keyword.'  OR  a.features LIKE '.$keyword.'  OR  a.brand LIKE '.$keyword.' )');
    }

ただし、これは非常に悪い検索結果を返します。たとえば、検索文字列Google Nexus 5は一致しますが、Google 5 Nexus ではない。 Joomla 3.3でこのクエリをフルテキスト検索に変換する正しい方法は何ですか

3
user2097091

特に大きなデータセットがある場合、同じ問題に直面しています。私はMATCHおよびMATCH AGAINSTソリューションも試しましたが、フルテキスト検索にはあまり役に立ちませんでした。最後に、独自の Finderプラグイン を作成し、全文検索用の拡張機能を移行して スマート検索 を使用します。これがあなたのためのオプションであるかどうかわからない。

1
Laoneo