我已经在2天后搜索了这个。我使用sense chrome插件来测试我的查询,但我找不到如何指定他应该搜索哪个索引。所以我的查询会搜索所有索引,并且不容易使用。
我尝试了以下语法:
GET _search
{
"query": {
"term": {
"_index": {
"value": "dev_events2"
}
}
}
}
GET _search
{
"_index": "dev_events2",
"query": {
"match_all" : { }
}
}
GET _search
{
"index": "dev_events2",
"query": {
"match_all" : { }
}
}
此致
Benjamin V。
编辑我终于找到了答案:只需将索引名称添加到get:localhost:9201 / myIndexName
的url中答案 0 :(得分:15)
您还可以将索引/类型添加到GET / PUT / DELETE ...查询:
GET index/type/_search
{
"query": {
"bool": {
"must": [
{
"term": {
...
}
}
]
}
}
}
答案 1 :(得分:10)
Heres卷曲示例什么有效,并允许您搜索多个索引:
curl 'http://localhost:9200/myindex1,myindex2/_search?q=*'
对于单个特定索引:
curl 'http://localhost:9200/myindex1/_search?q=*'
要查找索引名称:
curl 'localhost:9200/_cat/indices'
如果你想搜索所有索引:
curl 'localhost:9200/_search?pretty'
答案 2 :(得分:9)
GET index_name/_search
{
"query": {
"match_all" : { }
}
}
或指定索引类型
GET index_name/index_type/_search
{
"query": {
"match_all" : { }
}
}