ElasticSearch 搜索数据
2023-12-25 16:40:32
精确查询
存在查询
Exists query 用于查询某个字段不为空的数据。如下所示,查询 age 不为空的 数据
POST user/_search
{
"query": {
"exists": {
"field": "age"
}
}
}
主键查询
通过 _id 字段查询数据
POST user/_search
{
"query": {
"ids": {
"values": ["1", "2", "3"]
}
}
}
前缀查询
POST user/_search
{
"query": {
"prefix": {
"address": {
"values": "beijing"
}
}
}
}
范围查询
POST user/_search
{
"query": {
"range": {
"age": {
"gte": 10,
"lte": 20
}
}
}
}
查询参数 | 解释 |
---|---|
gt | > |
gte | >= |
lt | < |
lte | <= |
format | 设置时间格式 |
正则查询
POST user/_search
{
"query": {
"regexp": {
"name": "*小*"
}
}
}
术语查询
POST user/_search
{
"query": {
"term": {
"name": "小明"
}
}
}
多术语查询
terms query 和 term query 基本一样,terms query 允许在参数中传递多个查询词
POST user/_search
{
"query": {
"terms": {
"name": ["小明", "小红"]
}
}
}
通配符查询
POST user/_search
{
"query": {
"wildcard": {
"name": "*小*"
}
}
}
支持如下两个通配符
- ?匹配单个字符
- * 匹配零个或多个字符,包括空字符
复合查询
布尔查询
类型 | 说明 |
---|---|
must | 可包含多个查询条件,每个条件均被满足的文档才能被搜索到 |
filter | 可包含多个查询条件 |
should | 可包含多个过滤条件 |
must_not | 可包含多个过滤条件 |
参考博客
文章来源:https://blog.csdn.net/zzti_erlie/article/details/135198711
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!