問題タブ [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.
search - グループ化における AND 、 OR と NOT の組み合わせ
test:1 AND NOT bool:true
5 つのドキュメントを返します
しかし
test:1 AND (NOT bool:true)
0 ドキュメントを返します
なんで?
lucene クエリ形成における括弧の値を説明してください
mysql - 全文ブールモードの結果を理解する
私はboolean mode
MySQL のfulltext
検索をいじっていますが、時々得られる結果を理解していません。
たとえば、ここにいくつかのデータ行があります..
クエリを実行すると、次のようになります。
行100544,100549,100550,100553
が返されますが、これは正しいです。ただし、このクエリを実行すると:
同じ結果が返されます。?100553
に「non」が含まれているため、消えてはいけません。name
さらに、次のように変更すると:
結果が返されません。を除いてすべて取得する必要があり100553
ますか?
mysql - 全文ブール値モードで複数の単語にマイナス記号を使用する
私は mysql で一連のテストを行っていfull text boolean mode
ますが、私のテストから、複数の単語にマイナス記号を使用できないようです?
たとえば、2行あります..
次のクエリを実行すると:
両方の行が期待どおりに表示されません。ただし、このクエリを実行すると:
両方の行が表示されません (同じ結果)。行1
が戻ってくるべきではありませんか?
編集:私ft_min_word_len
はに設定されて2
おり、ストップワードファイルを無効にしているため、それとは関係ありません。
フィドル: http://sqlfiddle.com/#!2/d1987/4
ただし、フィドルはデフォルトのストップワードファイルを使用しているため、「非」ワードでテストしても機能しないようです。
python - sphinx で「OR」クエリを使用したときにソースを取得する方法
私はスフィンクスで「OR」クエリを使用していますが、結果のソースワードを取得したいと考えています。たとえば、「リンゴ | バナナ | ナシ」を検索して、これらの果物の単語が存在するドキュメントを取得します。通常、これらの単語を含み、いくつかの戦略に従ってソートされた doc(id) のリストを取得します。
問題は、返されたドキュメント (上位 10 件の結果) ごとに、ドキュメントに正確に含まれている単語も知りたいということです。つまり、リストに doc#3 が表示されたら、この doc に「apple」と「pear」が存在することも知りたいということです。現在、sphinx に python API を使用していますが、これを効率的に達成する方法はありますか? 問題を単純化するために、果物の代わりに別の数字を使用できます。
java - ブールクエリを使用した Lucene OR 検索
複数のフィールドを持つインデックスがあり、そのうちの 1 つは製品のカテゴリ名を格納する文字列フィールドです...「Electronics」、「Home」、「Garden」など
名前、価格、およびカテゴリで製品を検索するためにブール クエリを実行していますが、2 つのカテゴリを同時にクエリできるように OR 検索を行う方法がわかりません。
私の現在のクエリは次のようになります。
これは 1 つのカテゴリの検索では問題なく機能しますが、2 つのカテゴリになる "Electronics OR Home" を検索する方法がわかりません。
elasticsearch - elasticsearch は複数のクエリを結合します
人々に関する情報を保存するためのelasticsearchインデックスがあります。特定の人を見つけるためにいくつかのクエリがありますが、それぞれが単独で機能しますが、ブールクエリを使用してそれらを組み合わせるとエラーが発生します。
クエリの 1 つは、名前のあいまい検索です。
別のクエリは、特定の日付範囲で生まれた人を検索するためのものです
ここで、これら 2 つのクエリを結合します。私のブールクエリ:
両方のクエリを別々に使用すると問題なく動作しますが、それらを組み合わせるとエラーが発生します。私のインデックスには、名前が Peter であり、この日付範囲に生まれた人がいますが、人が見つからなかったとしても、エラーではなく 0 の結果が得られるはずです。
エラーは次のように述べています:
ブールクエリでは不可能な方法でクエリを組み合わせていますか、それとも間違った構文を使用しただけですか?