esAPI

Match Query: 这是最基本的全文查询,它接受文本、数字、日期等,返回匹配的文档。

{
  "query": {
    "match" : {
      "field" : "this is a test"
    }
  }
}
Multi Match Query: 这是对多个字段执行相同的全文查询。

{
  "query": {
    "multi_match" : {
      "query":    "this is a test", 
      "fields": [ "field1", "field2" ] 
    }
  }
}
Bool Query: 这是一个复合查询,它将多个查询组合在一起,并支持 must(必须)、should(应该)、must_not(不必)和 filter(过滤)子句。

{
  "query": {
    "bool" : {
      "must" : {
        "term" : { "user" : "kimchy" }
      },
      "filter": {
        "term" : { "tag" : "tech" }
      },
      "must_not" : {
        "range" : {
          "age" : { "gte" : 10, "lte" : 20 }
        }
      },
      "should" : [
        { "term" : { "tag" : "wow" } },
        { "term" : { "tag" : "elasticsearch" } }
      ],
      "minimum_should_match" : 1,
      "boost" : 1.0
    }
  }
}
Term & Terms Query: 这些查询用于精确值匹配。

{
  "query": {
    "term" : { "user" : "kimchy" }
  }
}
Range Query: 这个查询用于基于范围的匹配。

{
  "query": {
    "range" : {
      "age" : {
        "gte" : 10,
        "lte" : 20,
        "boost" : 2.0
      }
    }
  }
}
Exists Query: 这个查询用于检查字段是否存在并且非空。

{
  "query": {
    "exists" : { "field" : "user" }
  }
}
Wildcard Query: 这个查询用于基于通配符的匹配。

{
  "query": {
    "wildcard" : { "user" : "ki*y" }
  }
}
Regexp Query: 这个查询用于基于正则表达式的匹配。

{
  "query": {
    "regexp" : {
      "name.first" : "s.*y"
    }
  }
}
Prefix Query: 这个查询用于查找字段值以特定前缀开始的文档。

{
  "query": {
    "prefix" : { "user" : "ki" }
  }
}
Fuzzy Query: 这个查询使用模糊匹配,可以容忍小的拼写错误。

{
  "query": {
     "fuzzy" : { "user" : "kimcy" }
  }
}
Type Query: 这个查询已经在 Elasticsearch 7.0 以后的版本中被废弃,不再推荐使用。

Ids Query: 这个查询用于查找具有特定 id 的文档。

{
  "query": {
    "ids" : {
      "type" : "my_type",
      "values" : ["1", "4", "100"]
    }
  }
}
Constant Score Query: 这个查询将查询的结果作为一个常数返回。这对于在结果排序中忽略评分非常有用。

{
  "query": {
    "constant_score" : {
      "filter" : {
        "term" : { "user" : "kimchy"}
      },
      "boost" : 1.2
    }
  }
}
Dis Max Query: 这个查询会生成子查询,然后返回得分最高的那个子查询的结果。

{
  "query": {
    "dis_max" : {
      "queries" : [
        { "term" : { "age" : 34 } },
        { "term" : { "age" : 35 } }
      ],
      "tie_breaker" : 0.7
    }
  }
}
Function Score Query: 这个查询允许你修改文档的得分,可以用于实现更复杂的排序。

{
  "query": {
    "function_score": {
      "query": { "match_all": {} },
      "boost": "5",
      "functions": [
        {
          "filter": { "match": { "test": "cat" } },
          "random_score": {}, 
          "weight": 23
        }
      ],
      "max_boost": 42,
      "score_mode": "max",
      "boost_mode": "multiply",
      "min_score" : 42
    }
  }
}
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值