GET bank/_search{ "query": { "match_all": {} }, "sort": { "account_number": "asc", "balance":"desc" }}GET bank/_search{ "query": { "match_all": {} }, "sort": [ { "balance": { "order": "desc" } } ], "from": 0, "size": 20, "_source":[ "balance","firstname"]}
分词匹配 match
GET bank/_search{ "query": { "match": { "firstname": "West" } }}//查到两条,对检索条件分词匹配查询,按照评分进行排序GET bank/_search{ "query": { "match": { "address": "Kings" } }}
地址包含mill或者road都能匹配
短语匹配 match_phrase
GET bank/_search{ "query": { "match_phrase": { "address": "mill road" } }}
只匹配包含mill road的
多条件查询
GET bank/_search{ "query": { "multi_match": { "query": "mill", "fields": [ "state", "address" ] } }}
bool符合查询
GET bank/_search{ "query": { "bool": { "must": [ 必须满足 { "match": { "gender": "F" } }, { "match": { "address": "Madison" } } ], "must_not": [ 必须不满足 { "match": { "age": "22" } } ], "should": [ 应该满足,不满足也可以查到 {"match": { "balance": "32838" }} ] } }}
filter结果过滤
GET bank/_search{ "query": { "bool": { "filter": { "range": { "age": { "gte": 18, "lte": 30 } } } } }}
filter不会返回相关性得分
2.aggregations(执行聚合)聚合提供了从数据中分组和提取数据的能力。
搜索address中包含mill的所有人的年龄分布以及平均年龄,但不显示这些人详情。
GET bank/_search{ "query": { "match": { "address": "mill" } }, "aggs": { "ageAgg": { "terms": { "field": "age", "size": 10 } }, "avgAgg":{ "avg": { "field": "age" } }, "balanceAvg":{ "avg": { "field": "balance" } } }, "size": 0 只看聚合,不看详情}
按照年龄聚合,并且请求这些年龄段的这些人的平均薪资
GET bank/_search{ "query": { "match_all": { } }, "aggs": { "ageAgg": { "terms": { "field": "age", "size": 10}, "aggs": { "ageAvg": { "avg": { "field": "balance" } } } } }, "size": 0}
按照年龄聚合,并且这些年龄段中M平均薪资和F的平均薪资以及这个年龄段的总体平均薪资
GET bank/_search{ "query": { "match_all": {} }, "aggs": { "ageA": { "terms": { "field": "age", "size": 101 }, "aggs": { "genderA": { "terms": { "field": "gender.keyword", "size": 10 }, "aggs": { "balanceA": { "avg": { "field": "balance" } } } } } } }}
3.映射创建一个索引,并配置映射
PUT /my_index{ "mappings": { "properties": { "age":{ "type": "integer" }, "email":{ "type": "keyword" }, "name":{ "type": "text" } } }}
添加新的字段映射
PUT /my_index/_mapping{ "properties":{ "employee-id":{ "type":"keyword", "index": false } }}
修改映射&数据迁移
已经存在的映射字段,不能更新,更新必须创建新的牵引进行数据迁移
数据迁移
数据迁移 bank->newbankPOST _reindex{ "source": { "index": "bank", "type": "account" }, "dest": { "index": "newbank" }}查询newbankGET /newbank/_search