ESのクエリで指定されたフィールドのみを返す

Elasticsearchでは、「_source」フィールドを使用して、指定したフィールドの内容を返せます。デフォルトでは「_source」フィールドにはドキュメント全体の内容が返されますが、「_source」パラメーターを指定することで必要なフィールドのみを返せます。

以下に例を示します。

GET /index_name/_search
{
  "_source": ["field1", "field2"],
  "query": {
    "match_all": {}
  }
}

上記のクエリは、指定したクエリ条件に該当するすべてのドキュメントを返します。ドキュメントにはフィールド1とフィールド2の内容のみが含まれます。

また、_source_include and _source_exclude パラメータを使用して、返信されたフィールドをさらに管理することもできます。_source_include パラメータは、含める必要があるフィールドのリストを指定するために使用され、_source_exclude パラメータは、除外する必要があるフィールドのリストを指定するために使用されます。例:

GET /index_name/_search
{
  "_source": {
    "includes": ["field1", "field2"],
    "excludes": ["field3"]
  },
  "query": {
    "match_all": {}
  }
}

上記の例では、フィールド1とフィールド2を含むクエリ条件に一致するすべてのドキュメントが返され、フィールド3のコンテンツは除外されます。

これらのパラメーターを使用すれば、返される結果のフィールドの内容を柔軟に制御できます。

bannerAds