[解決済み] elasticsearchのマッチとタームクエリ
2023-03-13 08:18:31
質問
request.method": "GET"のマッチクエリ検索を使用しています。
{
"query": {
"filtered": {
"query": {
"match": {
"request.method": "GET"
}
},
"filter": {
"bool": {
"must": [
...
予想通り、Matchクエリは以下のような結果を得ることができます。
しかし、問題は、Termクエリを使用したときに、結果がないことです。
クエリを更新して、"match" を "term" に変更し、他の部分は同じままにしておきます。
{
"query": {
"filtered": {
"query": {
"term": {
"request.method": "GET"
}
},
"filter": {
"bool": {
"must": [
...
TermクエリはMatchクエリのquot;not analyze"バージョンだと思います。上の図のように、少なくとも1つのレコードは "request.method" が "GET" と等しくなっています。上記のTermクエリで結果が出ないのはなぜですか?ありがとうございます。
どのように解決するのですか?
あなたが
標準アナライザー
GET
となる
get
になります。ソースドキュメントには元の"GET"が残ります。
は
match
クエリは同じ標準アナライザを検索語に適用し、インデックスに格納されているものと一致します。このクエリは
term
クエリは検索語に解析器を適用しないので、転置インデックスの中からその単語を探すだけとなります。
この例で用語クエリを使用するには、大文字の "GET" を小文字の "get" に変更するか、マッピングを変更して request.method フィールドが次のように設定されるようにします。
not_analyzed
.
関連
-
[解決済み] 全レコードを返すElasticsearchクエリ
-
[解決済み] elasticsearchが特定のフィールドのみを返すようにするか?
-
[解決済み】elasticsearchのboolクエリはORで結合する必要があります。
-
[解決済み] フィルタリングされた]に[クエリ]が登録されていません。
-
[解決済み] Elasticsearch 2.0でリモートアクセス/リクエストを有効にするにはどうすればよいですか?
-
[解決済み] Logstashとelasticsearchの間のデータブローカー/メッセージングシステムとして、RedisとRabbitMQの比較
-
[解決済み] elasticsearchノードを停止/シャットダウンする方法は?
-
[解決済み] Elasticsearch 2.1: 結果ウィンドウが大きすぎる (index.max_result_window)
-
[解決済み] elasticsearchのQuery DSLにおけるmustとfilterの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] フィルタリングされた]に[クエリ]が登録されていません。
-
[解決済み] Elasticsearch 2.0でリモートアクセス/リクエストを有効にするにはどうすればよいですか?
-
[解決済み] Logstashとelasticsearchの間のデータブローカー/メッセージングシステムとして、RedisとRabbitMQの比較
-
[解決済み] elasticsearchノードを停止/シャットダウンする方法は?
-
[解決済み] Elasticsearch 2.1: 結果ウィンドウが大きすぎる (index.max_result_window)
-
[解決済み] elasticsearchのQuery DSLにおけるmustとfilterの違いは何ですか?