match_all:搜索所有
[root@localhost ~]# curl -XGET 'localhost:9200/bank/_search?pretty' -d '{"query": { "match_all": {} } }'
match:
搜索firstname包含Amber的文档
[root@localhost ~]# curl -XGET 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match": { "firstname": "Amber" } }
}'
搜索address中包含“mill” 或者 包含“lane”的文档
[root@localhost ~]# curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": {
"match": { "address": "mill lane" }
}
}'
match_phrase:短语匹配
匹配短语“mill lane”,此时只会搜索出address为mill lane的文档
[root@localhost ~]# curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match_phrase": { "address": "mill lane" } }
}'
multi_match:fields指定需要查询的字段,_all指定查询所有的字段
在所有的字段中搜索包含“Virginia”的文档
curl -XGET 'localhost:9200/bank/_search?pretty' -d '
{
"query":{
"multi_match":{
"query":"Virginia",
"fields":["_all"]
}
}
}'
在firstname和address字段中搜索包含“Virginia”的文档
curl -XGET 'localhost:9200/bank/_search?pretty' -d '
{
"query":{
"multi_match":{
"query":"Virginia",
"fields":["firstname","address"]
}
}
}'
Boosting:权重
address字段的权重调成3.与上面一条对比查询结果
curl -XGET 'localhost:9200/bank/_search?pretty' -d '
{
"query":{
"multi_match":{
"query":"Virginia",
"fields":["firstname","address^3"]
}
}
}'
分页:size指定返回条数,from指定从第几条返回
[root@localhost ~]# curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match": { "address": "mill lane" } },
"size":3,
"from":10
}'
highlight:高亮显示
curl -XPOST 'localhost:9200/bank/_search?pretty' -d '
{
"query": { "match": { "address": "mill lane" } },
"size":3,
"from":10,
"highlight":{
"fields":{
"address":{}
}
}
}'
filter:查询age大于30且state为ok的文档
curl -XGET "http://localhost:9200/bank/_search" -d'
{
"query" : {
"bool" : {
"must" : {
"match" : {
"state" : "ok"
}
},
"filter" : {
"range" : {
"age" : { "gt" : 30 }
}
}
}
}
}'