問題タブ [booleanquery]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
lucene - BooleanQuery setDisableCoord
setDisableCoord とは何か、どの値を設定すればよいかわかりません。単純なクエリ (TFIDF クエリなど) で coord を理解しています。しかし、いくつかのクエリで構成されるブールクエリでそれが何を意味するのか理解できません。
状況を説明するために、次の 2 つのシナリオを想定します。それぞれの setDisableCoord にどのような値を設定する必要がありますか?
- 最初のシナリオでは、BooleanClause.Occur.FILTER を使用したクエリ (クエリはフィルタリングにのみ使用されます) とスコアリング用の別のクエリ (BooleanClause.Occur.MUST) があります。このシナリオでは、最初のクエリはドキュメントの「年」フィールドが指定された範囲内にあるかどうかのみをチェックし、2 番目のクエリはランク付けのために何らかのアルゴリズムを使用します。
- 2 番目のシナリオでは、BooleanClause.Occur.SHOULD を使用した 2 つのクエリがあり、これらのスコアを組み合わせて、ドキュメントの最終的な取得スコアを取得する必要があります。
c# - プロパティが false でない限り、カテゴリはこれではありません
タイトルのとおりです。それ以外の場合は、LINQ ステートメントでの and、xor、または式の単純な使用です。
他のブール演算でリストをフィルタリングしたい場所、および IsReviewed ブール値が false でない限り、残りの項目をカテゴリ「何か」にすべきでない場所。
これを表現する別の言い方をすると、レビューされていない限り、「何か」カテゴリを除いて、どのカテゴリのアイテムも表示したい.
あなたの指示に感謝します。
elasticsearch - ElasticSearch 5.x は、フィルタリングに対してクエリを実行する必要があります
ES クエリからの結果に問題があります。クエリをフィルタリングすると、紛らわしい結果が得られますが、それを克服する方法がわかりません。そう:
ここで必要なのは、名前、説明、またはテキストがクエリに一致するすべてのレコードを取得するか、ID 1 または 2 のすべてのプロジェクト (マッピングの _type) を取得することです。例: 5 件のヒット、2 件の Contact _type、1 件のプロジェクトが「searchquery」に一致し、ID が 1 または 2 の 2 件のプロジェクト。
しかし、私はいくつかの権限を持っているので、すべてのユーザーがすべてのモジュールにアクセスできるわけではありません (プロジェクトには別のフィールド、たとえば ModuleId があります)。
したがって、結果を特定の ModuleIds に制限したいと思います。
そしてブーム!その結果、上記のクエリに一致するallと、ModuleId 9 または 5 のすべての Projects を取得しました。私が望むのは、結果を広げずに絞り込むことです。should、must、filter(bool フィルターも) と多くの組み合わせを試しました。また、「魔法のように」期待される結果が得られる post_filter も試しましたが、いくつかの集計もあり (この例ではありません)、オプションではありません。
solr - 複数の否定を含む Solr クエリ
Solr 6.5.1 には、*_txt_en
フィールドとstring
ドキュメント タイプ フィールドがあります。これらのフィールドで、次の形式のクエリを作成したいと思います。
特定のドキュメント タイプのすべてのドキュメントに一致します。
- 特定のフレーズ (「フレーズ 1」、「フレーズ 2」) が一致するには、テキスト フィールドに含まれている必要があります。
- ただし、他のフレーズ (「フレーズ 3」、「フレーズ 4」、「フレーズ 5」) もこのフィールドにある場合は、一致しません。
私が書いた現在の Solr クエリは次のようになります。
(documenttype:references AND (field:"phrase one" OR field:"phrase two")) AND NOT field:"phrase three" AND NOT field:"phrase four" AND NOT field:"phrase five"
私が考えることができる代替案は次のとおりです。
(documenttype:references AND (field:"phrase one" OR field:"phrase two")) AND NOT (field:"phrase three" OR field:"phrase four" OR field:"phrase five")
上記のクエリは、いくつかの例のおもちゃのデータ セットで機能するようです。しかし、Solr には、いくつかの不文律があり、明らかな落とし穴ではないことがわかりました。特に、ブールクエリの一部としての否定についてはそうです。
私が説明したクエリの場合、これはそれらを形成する正しい構文ですか?