0

私は sphinx をセットアップしており、php API を使用して検索を実行できます。しかし、私は2つの質問があります。

  1. このテスト データベースには、それぞれがカテゴリ ID を持つ多数の製品があります。検索後のユーザーが特定のカテゴリからのみ結果を取得できるように、フィルタリング機能を作成するにはどうすればよいでしょうか。つまり、最初に car を検索して 10 件の一致を取得し、次にカテゴリ Ford を選択して 3 件の一致 (Ford カテゴリの車) のみを取得します。

  2. スフィンクスがインデックスを検索するのか、データベースを直接検索するのか、少し混乱しています。インデックスを検索したと思ったのですが、データベース内のテキストを変更して、インデックスを再作成せずに検索を行ったところ、テキストに加えた変更が結果に表示されました。

いつものように、すべてが大歓迎です!

4

1 に答える 1

0

フィルターを作成するには、属性をデータ ソースに追加する必要があります (SQL クエリで選択することを忘れないでください SELECT category_id, ...)。

sql_attr_uint = category_id

次に、PHP コードからフィルターを追加できます。

$s->SetFilter('category_id', array(43));

2 番目の質問では、インデクサーを実行してデータを更新する必要があります。

于 2012-09-24T18:45:56.653 に答える