12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- [[mapping-uid-field]]
- === `_uid` field
- Each document indexed is associated with a <<mapping-type-field,`_type`>> (see
- <<mapping-type>>) and an <<mapping-id-field,`_id`>>. These values are
- combined as `{type}#{id}` and indexed as the `_uid` field.
- The value of the `_uid` field is accessible in queries, aggregations, scripts,
- and when sorting:
- [source,js]
- --------------------------
- # Example documents
- PUT my_index/my_type/1
- {
- "text": "Document with ID 1"
- }
- PUT my_index/my_type/2?refresh=true
- {
- "text": "Document with ID 2"
- }
- GET my_index/_search
- {
- "query": {
- "terms": {
- "_uid": [ "my_type#1", "my_type#2" ] <1>
- }
- },
- "aggs": {
- "UIDs": {
- "terms": {
- "field": "_uid", <2>
- "size": 10
- }
- }
- },
- "sort": [
- {
- "_uid": { <3>
- "order": "desc"
- }
- }
- ],
- "script_fields": {
- "UID": {
- "script": {
- "lang": "painless",
- "inline": "doc['_uid']" <4>
- }
- }
- }
- }
- --------------------------
- // CONSOLE
- <1> Querying on the `_uid` field (also see the <<query-dsl-ids-query,`ids` query>>)
- <2> Aggregating on the `_uid` field
- <3> Sorting on the `_uid` field
- <4> Accessing the `_uid` field in scripts
|