指定されたフィールドを照会する方法

Elasticsearchでは、クエリを使って特定のフィールドを検索します。基本的なクエリを以下に示します。

GET /index_name/_search
{
  "query": {
    "match": {
      "field_name": "field_value"
    }
  }
}

上記のクエリ例では、index_nameは検索対象のインデックス名、field_nameは検索対象のフィールド名、field_valueは照合するフィールド値です。

複数のフィールドを検索するには、multi-match クエリを使用できます。次の例を参照してください。

GET /index_name/_search
{
  "query": {
    "multi_match": {
      "query": "field_value",
      "fields": ["field1", "field2", "field3"]
    }
  }
}

上記のクエリ例では、「field1」「field2」「field3」は検索対象のフィールド名です。

複雑な検索をしたい場合は、boolクエリを使用します。以下にその例を示します。

GET /index_name/_search
{
  "query": {
    "bool": {
      "must": [
        {"match": {"field1": "value1"}},
        {"match": {"field2": "value2"}}
      ],
      "filter": {"term": {"field3": "value3"}}
    }
  }
}

上記の検索サンプルでは、must節は指定したフィールドの値と一致するのを、filter節はクエリ結果をフィルタリングするのに利用されています。

指定されたフィールドをクエリするための異なるクエリステートメントが、具体的なニーズに応じて利用可能です。

bannerAds