查询多条参数说明

查询示例

本小节以 CURL 为例,说明查询参数。平台 API 支持多种语言调用,如:CURL,JavaScript,Python。

dsl1

查询条件

全象云低代码平台 API 遵循 elasticsearch 的查询语法。

单字段查询

如果需要查询单个字段,可以使用 matchterm 等关键字进行查询,具体语义如下:

match

匹配条件是 desc 字段中包含"软件"这个词。

{
  "query" : { "match" : { "desc" : "软件" }}
}

term

匹配条件是 desc 字段等于"软件"这个词。

{
  "query" : { "term" : { "desc" : "软件" }}
}

terms

匹配条件是 age 字段里面等于数组中任一值。

{
  "query" : { "terms" : { "age" : [1,4,5,6,7,12] }}
}

range

range 用于范围查找,详细参数说明如下。

  • gte:大于等于;
  • gt:大于;
  • lt:小于等于;
  • lte:小于。
{
  "query" : { "range": {
      "age": {
         "gte": 12,
         "gt": 11,
         "lt": 11,
         "lte": 12
      }
    }}
}

多字段查询

如果需要搜索多个关键字,例如查询 name 等于小明,age 等于 1 或者 2 。首先用单字段查询 termterms 来表示,然后将它们用 bool 查询进行组合。

{
  "query": {
    "bool": {
      "must": [
        { "term": { "name":  "小明" }},
        { "terms": { "age":  [1,2]}} 
      ]
    }
  }
}

排序

排序使用 sort 字段,使用一个数组接收。排序规则为:先按照 created_at 排序,如果 created_at 无法排序,则按照 age 排序。

{
    "sort":["-created_at" ,"age"]
}

分页

支持使用 page 和 size 分页。

page:从 1 开始, 第一页用 1表示 ,以此类推。

size:每页大小。

  {
    "page": 19,
    "size": 8
  }
本页目录:
章节