SphinxQL を使用して Sphinx 検索エンジンのプロジェクトに取り組んでいます。私の問題は次のとおりです。
これは私のsphinxqlクエリです:
"SELECT *, country FROM all_gebrauchte_products WHERE MATCH('@searchtext (".$searchQuery.")') AND country='".$where."' ORDER BY WEIGHT() DESC LIMIT ".$page.", ".$limit." OPTION ranker=expr('sum(lcs)')"
結果は次のように大きく異なります。
Honda => 50 results
Honda CBR => 9 results
Honda CBR 1000 => 2 results
これは私のMySQLクエリです:
SELECT COUNT(*) FROM all_gebrauchte_products WHERE MATCH(gebr_id, gebr_hersteller, gebr_modell, gebr_ukat, gebr_kat, gebr_bemerkung) AGAINST ('".$searchQuery."' IN BOOLEAN MODE);
結果は次のとおりです。
Honda => 67 results
Honda CBR => 67 results
Honda CBR 1000 => 84 results
MySQL クエリはブール モードで動作します。そのため、Honda CBR 1000 のクエリは、Honda VTR 1000 も検出すると思います...
では、2 番目の結果セットに近づくには、どの検索モードが最適でしょうか? 完璧なモードとは何か、sphinxql クエリを正しい方法で記述する方法 (例) を誰かに説明してもらえますか?
サンクス。あらかじめ...