1

レシピを含む Solr インストールがあります。

各レシピには複数の材料が含まれており、現在、「含む/除外」を入力できるレシピ検索を作成しています。その後、自作の重み付けシステムが追加されます.

ただし、クエリの構築はオフになっているため、調整が必要です。

// Works perfect - 109 results
ingredients:chicken OR tomatoes OR bacon

// Down to 7 results - Definitely wrong
ingredients:chicken OR tomatoes OR bacon AND -ingredients:garlic 

このクエリをどのような方法でも作成しようとしましたが、許容できる「ファジー フィルター」を見つけることができません。

4

2 に答える 2

1

私はするだろう:

ingredients:((chicken OR tomatoes OR bacon) AND NOT garlic)

これは私にとってはうまくいきます。

次のようにすべての除外を追加できます。

ingredients:((chicken OR tomatoes OR bacon) AND NOT (garlic OR peanuts OR spinach))
于 2011-04-06T08:46:50.987 に答える
0

試すingredients:chicken OR tomatoes OR bacon AND (-ingredients:garlic)

Solr 3.1 with を使用していると仮定していますedismax

負のクエリを括弧で囲むと機能することがわかりました。これを詳しく調べて、これが予想される動作なのか、それともバグなのかを判断する時間はありませんでした。これをさらに詳しく調査し、これがバグであることが確認された場合は、ここで Jira の問題を開いてください。

上記で提案したクエリは、構成に従ってデフォルトのフィールドでトマト/ベーコンを検索することに注意してください。ingredientsそれらのみを検索する場合は、次を使用しますingredients:(chicken OR tomatoes OR bacon) AND (-ingredients:garlic)

于 2011-04-06T05:01:47.670 に答える