高级查询 3.8
接口规范
- API 地址:
entity/adv-query - HTTP 方法:POST
- 授权方式:通用授权
请求参数
| 参数 | 类型 | 是否必须 | 参数说明 |
|---|---|---|---|
| entity | string | 是 | 模块内部名称,如 Account,可通过 元数据 接口获取 |
| fields | string | 是 | 要查询的字段列表,多个字段以逗号(,)分隔 字段请通过 元数据 接口获取 |
| POST流 | json(map) | 是 | 查询条件 filter |
| sort | string | 否 | 排序,格式为 fieldName[:asc|desc],支持多个字段排序,多个字段以逗号(,)分隔。4.6 |
| page_no | int | 否 | 页码,默认 1 |
| page_size | int | 否 | 页大小,默认 20,最大 200 |
filter 参数说明
首先来看一个典型的 filter 数据格式样例
{
"type": "OR",
"filters": [
{ "fieldName":"phone", "operator":"cl", "value":"021" },
{ "fieldName":"address", "operator":"cl", "value":"上海" }
]
}
可以看出,这是一个标准的 JSON 格式数据,由两个主要属性节点构成,即 type 和 filters。
type取值范围为OR | AND,即标识以何种逻辑运算拼接filters中的内容filters具体的查询条件(数组)
在 filters 节点内,可以包含多个查询条件(最大支持10个),查询条件属性的具体含义如下。
fieldName查询字段operator操作符,如大于、小于、包含等value查询值
operator 的可选值
| 值 | 说明 |
|---|---|
| = | 等于 |
| <> | 不等于 |
| > | 大于 |
| < | 小于 |
| cl | 包含 |
| nc | 不包含 |
| $NULL$ | 为空 |
| $NOT_NULL$ | 不为空 |