Es 多字段模糊查询 bool的方式
Es 多字段模糊查询 bool的方式目录要求:or 的方式multi_match:多字段模糊查询:总结:要求:Es查询:查询工单信息,其关联三个字段的内容; 即模糊查询三个字段:form_name, form_title , form_serial 的内容。三个字段中有查询出有符合内容的数据输入IDCor 的方式and 查询 同时满足,用mustor 只要有一个或部分条件满足 用should,符合
·
Es 多字段模糊查询 bool的方式
目录
要求:
Es查询:
查询工单信息,其关联三个字段的内容; 即模糊查询三个字段: form_name, form_title , form_serial 的内容。三个字段中有查询出有符合内容的数据
输入IDC
or 的方式
and 查询 同时满足,用must
or 只要有一个或部分条件满足 用should,符合要求
GET /basic_index*/_search
{
"from": 0,
"size": 20,
"query": {
"bool": {
"should": [{
"match": {
"form_name": "IDC"
}
},
{
"match": {
"form_title": "IDC"
}
},
{
"match": {
"form_serial": "IDC"
}
}
]
}
},
"sort": [{
"create_date": {
"order": "desc"
}
}]
}
这种方式适合动态拼接,但是拼接多了内容显得比较长
multi_match:多字段模糊查询:
multi_match可以指定多字段进行模糊查询。
GET /basic_index*/_search
{
"size": 20,
"from": 0,
"query": {
"bool": {
"should": [{
"multi_match": {
"query": "IDC",
"fields": ["form_name", "form_title", "form_serial"]
}
}]
}
},
"sort": [{
"create_date": {
"order": "desc"
}
}]
}
总结:
Es模糊查询,动态拼接的话,使用should比较方便,手动拼接在kibana的话,用multi_match会省事一些。
更多推荐
已为社区贡献10条内容
所有评论(0)