ElasticSearch复杂搜索
排序
GET gouzi/user/_search
{
"query": {
"match": {
"name": "狗"
}
},
"_source": ["name"],
"sort": [ 排序
{
"age": { 按照 age
"order": "desc" 进行倒叙 或者(asc)
}
}
]
}
分页
"from": 0, 第几条开始
"size": 2 每页有几条数据
高亮查询
自定义高亮条件
模糊查询
GET gouzi/user/_search
{
"query": { 查询
"match": {
"name": "狗" 属性值
}
}
, "_source": ["name"] 过滤出来name属性字段
}
只查询到想要的属性
bool must (and)必须匹配
GET gouzi/user/_search
{
"query": {
"bool": { 布尔值查询
"must": [
{
"match": { 匹配
"name": "狗" 属性值为狗
}
},
{
"match": {
"age": "1" 年龄值为1
}
}
]
}
}
}
bool should (or)大致匹配
bool must_not (not) 除了这个数据都查询出来
filter 划定范围
划定范围 大于小于 大于等于小于等于
匹配多个条件查询
精确查询
term查询时直接通过倒排索引指定的词条进程精确的查找的!
分词: match,会使用分词器解析!
term效率成倍提高
keyword 类型不会被分词器解析的 (精确查询)
term 不匹配分词 配合 keyword 精确查询
match 匹配分词
精确查询多个值