范围查询[range]
range 关键字: 用来指定查询指定范围内的文档
- GET /products/_search
- {
- "query": {
- "range": {
- "price": {
- "gte": 1400,
- "lte": 9999
- }
- }
- }
- }
前缀查询[prefix]
prefix 关键字: 用来检索含有指定前缀的关键词的相关文档
- GET /products/_search
- {
- "query": {
- "prefix": {
- "title": {
- "value": "ipho"
- }
- }
- }
- }
通配符查询[wildcard]
wildcard 关键字: 通配符查询 ? 用来匹配一个任意字符 * 用来匹配多个任意字符
- GET /products/_search
- {
- "query": {
- "wildcard": {
- "description": {
- "value": "iphon*"
- }
- }
- }
- }
多id查询[ids]
ids 关键字 : 值为数组类型,用来根据一组id获取多个对应的文档
- GET /products/_search
- {
- "query": {
- "ids": {
- "values": ["verUq3wBOTjuBizqAegi","vurUq3wBOTjuBizqAegk"]
- }
- }
- }
模糊查询[fuzzy]
fuzzy 关键字: 用来模糊查询含有指定关键字的文档
- GET /products/_search
- {
- "query": {
- "fuzzy": {
- "description": "iphooone"
- }
- }
- }
注意:
fuzzy 模糊查询 最大模糊错误 必须在0-2之间
搜索关键词长度为 2 不允许存在模糊
搜索关键词长度为3-5 允许一次模糊
搜索关键词长度大于5 允许最大2模糊
布尔查询[bool]
bool 关键字: 用来组合多个条件实现复杂查询
must: 相当于&& 同时成立
should: 相当于|| 成立一个就行
must_not: 相当于! 不能满足任何一个
- GET /products/_search
- {
- "query": {
- "bool": {
- "must": [
- {"term": {
- "price": {
- "value": 4999
- }
- }}
- ]
- }
- }
- }