問題タブ [query-parser]

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.

0 投票する
1 に答える
299 参照

solr - Solr Edismax クエリが間違った結果を生成する

2 種類の solr クエリがあります。1 つは EDisMax パーサーを使用し、もう 1 つはデフォルトとして標準クエリ パーサーを使用します。以下は、私が使用した 2 つのクエリです。クエリの目的は、次の単語 ELM、PST、June を含まないドキュメントです。

EDisMax クエリ

q= content:(-EML -PST -June) OR contentenstem:(-EML -PST -June)&start=0&rows=25 &defType=edismax&fl=コンテンツ ファイル名

約 12232 の結果が生成されます。ドキュメントの 4292 の結果には、EML、PST、または June という特定のクエリ文字列が含まれているため、4292 の結果ドキュメントは間違っています。

標準パーサー クエリ

query:q=size:[ 0 TO * ]&fq=content:( -EML -PST -June )&fq=contentenstem:( -EML -PST -June )&start=0&rows=25&fl=コンテンツファイル名

約 7940 件の結果が生成されます。

このクエリで EDisMax クエリが失敗した理由;EDisMax パーサー クエリを使用して正しい結果を得る方法

EDisMax と標準クエリ パーサーがドキュメントの AND & OR ブール クエリを解析する方法がわかれば、異なるパーサーで異なるドキュメント カウントが発生した理由の答えが得られる可能性があります。

0 投票する
2 に答える
354 参照

lucene - Lucene クエリ パーサーがフィールドを期待どおりに解析しない

lucene (3.0.3) を使用して単純なクエリを解析したい:

ドキュメントの例のように。

期待される結果は次のとおりです。

しかし、代わりに私は得る:

コードは非常に単純です (c#):

0 投票する
1 に答える
3712 参照

lucene - Lucene QueryParser にアナライザーが必要な理由

私はLuceneQueryを初めて使用し、生の文字列をQueryParser.

QueryParser.Parse()メソッドに Analyzer パラメーターが必要なのはなぜですか?

分析がクエリに関係するものである場合、通常のオブジェクト (など)Analyzerを扱う場合にも を指定する必要があります。そうでない場合は、なぜそれが必要なのでしょうか?QueryTermQueryBooleanQueryQueryParser

0 投票する
1 に答える
180 参照

lucene - Lucene: ヒット数を制限するにはどうすればよいですか?

ユーザーが Web サイトにアップロードしたすべての写真を検索する Web ページ フォームがあります。問題は、ページに 21 枚の写真しか表示されていないにもかかわらず、Lucene 検索が現在、検索条件を満たすすべての写真を取得していることです。これにより、重大なパフォーマンスの問題が発生しています。パフォーマンスを向上させるために、取得する写真の数を 21 に制限することはできますか?

例えば ​​(Category: New) を使って検索を特定のカテゴリに制限するのと同じように、ヒット数を制限する同様の方法はありますか?

0 投票する
1 に答える
5252 参照

solr - Solr : フレーズ検索で特殊文字で検索

Solr Search を次のようにする必要があります

ただし、エスケープシーケンスを追加すると、Solrクエリパーサーはすべての特殊文字を検索から除外します。

私の検索クエリは以下のとおりです

以下はそのためのdebugQueryです。

これをWebで検索したところ、solrはデフォルトで特殊文字にインデックスを付けないため、機能させるには特殊文字にインデックスを付ける必要があるという結果が得られました。

solr.WordDelimiterFilterFactoryそうするために、TextField定義に追加しました

そうしても、&検索語で解析されません。

作成したいのは、solr が「成功と失敗」で検索する必要があり、特殊文字を削除しないようにすることです。

誰もがこれを行う方法を知っていますか??

0 投票する
1 に答える
227 参照

search - グループ化における AND 、 OR と NOT の組み合わせ

test:1 AND NOT bool:true

5 つのドキュメントを返します

しかし

test:1 AND (NOT bool:true)

0 ドキュメントを返します

なんで?

lucene クエリ形成における括弧の値を説明してください

0 投票する
2 に答える
2049 参照

java - Lucene を使用した文字列との比較演算子

Lucene の QueryParser をアプリケーションの検索に統合しました。いくつかの比較演算子も実行する必要がある stringField があります。

例: 年齢>3 年齢<4

しかし、フィールドを Int にすることはできません。「NIL」、「Undefined」などの文字列値が含まれることがあるためです。

とにかく、同じフィールドに複数のタイプを適用する方法はありますか?それとも、stringField 自体に比較演算子を適用することは可能ですか? 助けてください。

0 投票する
1 に答える
1473 参照

solr - Solr edismax クエリ パーサー オペレーター

edismax パーサーについて 2 つのクエリがあります --->

1.edismax パーサーは && || をサポートしていますか? AND および OR 演算子の場合は? 2.また、NOT 演算子 like および/または AND/OR の 'not' はサポートされていますか?

edismax パーサーがこれをサポートしていない場合、このパーサーを拡張してこの機能を追加するにはどうすればよいですか?

前もって感謝します。デヴェンドラ