WARNING: Version 2.4 of Elasticsearch has passed its EOL date.
This documentation is no longer being maintained and may be removed. If you are running this version, we strongly advise you to upgrade. For the latest information, see the current release documentation.
_index field
edit_index field
editWhen performing queries across multiple indexes, it is sometimes desirable to
add query clauses that are associated with documents of only certain indexes.
The _index field allows matching on the index a document was indexed into.
Its value is accessible in term, or terms queries, aggregations,
scripts, and when sorting:
The _index is exposed as a virtual field — it is not added to the
Lucene index as a real field. This means that you can use the _index field
in a term or terms query (or any query that is rewritten to a term
query, such as the match, query_string or simple_query_string query),
but it does not support prefix, wildcard, regexp, or fuzzy queries.
# Example documents
PUT index_1/my_type/1
{
"text": "Document in index 1"
}
PUT index_2/my_type/2
{
"text": "Document in index 2"
}
GET index_1,index_2/_search
{
"query": {
"terms": {
"_index": ["index_1", "index_2"]
}
},
"aggs": {
"indices": {
"terms": {
"field": "_index",
"size": 10
}
}
},
"sort": [
{
"_index": {
"order": "asc"
}
}
],
"script_fields": {
"index_name": {
"script": "doc['_index']"
}
}
}
|
Querying on the |
|
|
Aggregating on the |
|
|
Sorting on the |
|
|
Accessing the |