1、条件查询
匹配查询
{
"query": {
"match": {
"category": "小米"
}
}
}
查询全部
{
"query": {
"match_all": {}
}
}
2、分页查询
查询第二页的数据,并且只获取title字段。
{
"query": {
"match_all": {},
"from": 2,
"size": 2,
"_source": [
"title"
]
}
}
3、查询排序
{
"query": {
"match_all": {},
"from": 2,
"size": 2,
"_source": [
"title"
],
"sort": {
"price": {
"order": "desc"
}
}
}
}
4、多条件查询
4.1 must 两个条件同时成立
{
"query": {
"bool": {
"must": [
{
"match": {
"category": "小米"
}
},
{
"match": {
"price": "1999"
}
}
]
}
}
}
4.2 should 查询符合两个条件的数据
{
"query": {
"bool": {
"should": [
{
"match": {
"category": "小米"
}
},
{
"match": {
"category": "华为"
}
}
]
}
}
}
5、filter 范围查询
大于5000的数据查询
{
"query": {
"bool": {
"should": [
{
"match": {
"category": "小米"
}
},
{
"match": {
"category": "华为"
}
}
],
"filter": {
"range": {
"price": {
"gt": 5000
}
}
}
}
}
}
6、match、match_phrase 检索方式
match全文检索匹配
当保存文档数据时,es会将数据文字进行进行分词、拆解操作,并将拆解后的数据保存到倒排索引当中,因此即使使用数据的一部分也可以查询到数据,这种检索方式称为全文检索。
案例:小华,将会被拆解为小、华,符合条件的都可查询出来。
{
"query": {
"match": {
"category": "小华"
}
}
}
match_phrase完全匹配
案例:则匹配小华。
{
"query": {
"match_phrase": {
"category": "小华"
}
}
}
7、高亮查询
对查询结果当中的category字段高亮显示。
{
"query": {
"match_phrase": {
"category": "小米"
}
},
"highlight": {
"fields": {
"category": {}
}
}
}
8、 聚合查询
按照价格分组,并且只获取统计结果
{
"aggs": { // 聚合操作
"price_group": { // 名称,随意起名
"terms": { // 分组
"field": "price" // 分组字段
}
}
},
"size": 0 // 没有原始数据了,只有统计结果
}
不分组,统计价格平均值
{
"aggs": {
"price_avg": {
"avg": { // 平均值
"field": "price"
}
}
},
"size": 0
}
9、映射关系
创建索引:
text分词
keyword关键字需完全匹配文章来源:https://www.toymoban.com/news/detail-489509.html
index索引:true可被索引,false不可被索引文章来源地址https://www.toymoban.com/news/detail-489509.html
{
"properties": {
"name": {
"type": "text",
"index": true
},
"sex": {
"type": "keyword",
"index": true
},
"tel": {
"type": "text",
"index": false
}
}
}
到了这里,关于Elasticsearch HTTP查询的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!