123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- [[query-dsl-parent-id-query]]
- === Parent ID query
- ++++
- <titleabbrev>Parent ID</titleabbrev>
- ++++
- Returns child documents <<parent-join,joined>> to a specific parent document.
- You can use a <<parent-join,join>> field mapping to create parent-child
- relationships between documents in the same index.
- [[parent-id-query-ex-request]]
- ==== Example request
- [[parent-id-index-setup]]
- ===== Index setup
- To use the `parent_id` query, your index must include a <<parent-join,join>>
- field mapping. To see how you can set up an index for the `parent_id` query, try
- the following example.
- . Create an index with a <<parent-join,join>> field mapping.
- +
- --
- [source,console]
- ----
- PUT /my-index-000001
- {
- "mappings": {
- "properties": {
- "my-join-field": {
- "type": "join",
- "relations": {
- "my-parent": "my-child"
- }
- }
- }
- }
- }
- ----
- // TESTSETUP
- --
- . Index a parent document with an ID of `1`.
- +
- --
- [source,console]
- ----
- PUT /my-index-000001/_doc/1?refresh
- {
- "text": "This is a parent document.",
- "my-join-field": "my-parent"
- }
- ----
- --
- . Index a child document of the parent document.
- +
- --
- [source,console]
- ----
- PUT /my-index-000001/_doc/2?routing=1&refresh
- {
- "text": "This is a child document.",
- "my_join_field": {
- "name": "my-child",
- "parent": "1"
- }
- }
- ----
- --
- [[parent-id-query-ex-query]]
- ===== Example query
- The following search returns child documents for a parent document with an ID of
- `1`.
- [source,console]
- ----
- GET /my-index-000001/_search
- {
- "query": {
- "parent_id": {
- "type": "my-child",
- "id": "1"
- }
- }
- }
- ----
- [[parent-id-top-level-params]]
- ==== Top-level parameters for `parent_id`
- `type`::
- (Required, string) Name of the child relationship mapped for the
- <<parent-join,join>> field.
- `id`::
- (Required, string) ID of the parent document. The query will return child
- documents of this parent document.
- `ignore_unmapped`::
- +
- --
- (Optional, boolean) Indicates whether to ignore an unmapped `type` and not
- return any documents instead of an error. Defaults to `false`.
- If `false`, {es} returns an error if the `type` is unmapped.
- You can use this parameter to query multiple indices that may not contain the
- `type`.
- --
|