# 云函数查询多条数据库数据

# 简要描述

  • 云函数查询数据库数据,返回所有匹配的数据列表
  • 参数结构与 查询多条数据库数据 完全一致(where + pc + 表达式 reg)
  • 结果超过 1000 条需分页,默认第 1 页、每页 1000 条

# 方法名称

potato.selectList(tableName, param)
1

# 参数说明

参数 必选 类型 说明
tableName 是 String 表名称(土豆 API 中创建的表名)
param 是 Object 查询体,结构见下表;查全部时传 {}

# param 结构(与数据库接口 body 一致)

参数名 必选 类型 说明
where 否 Array 条件对象数组;唯一生效的条件入口(代码只解析 param.where)
pc 否 Object 分页,默认 { "p": 1, "s": 1000 }

勿在 param 顶层直接传 reg / column / value,实现不会读取,条件只会来自 where 数组。

# where 数组每一项

参数名 必选 类型 说明
reg 否 String 表达式,缺省为 eq
column 是 String 字段名称,如 id
value 是 String/Object 字段值;in/nin 时为数组或 JSON 数组字符串

# reg 表达式取值(与 SqlEnum / Mapper 一致)

值 含义
eq 等于(默认)
le 小于
lte 小于等于
gt 大于
gte 大于等于
ne 不等于
in 包含在数组中
nin 不包含在数组中
like_contains 前后缀匹配(包含)
like_prefix 前缀匹配
like_suffix 后缀匹配

# pc 分页对象

参数名 说明
p 页码,从 1 开始
s 每页条数,默认最大按实现为 1000

# 调用实例

# 查询全部

var res = potato.selectList('users', {});
return res;
1
2

# 条件查询(where 数组)

var param = {
    where: [
        { reg: 'eq', column: 'status', value: '1' },
        { reg: 'eq', column: 'type', value: 'vip' }
    ],
    pc: { p: 1, s: 100 }
};
var res = potato.selectList('users', param);
return res;
1
2
3
4
5
6
7
8
9

# 带比较条件

var param = {
    where: [
        { reg: 'eq', column: 'id', value: '1' },
        { reg: 'le', column: 'id', value: '3' }
    ],
    pc: { p: 1, s: 1000 }
};
var res = potato.selectList('test', param);
return res;
1
2
3
4
5
6
7
8
9

错误写法(勿用):potato.selectList('users', { status: 1 })
多条查询不能像 selectOne 那样直接平铺字段,必须使用 where 数组。

# 返回示例(方法直接返回)

[
    { "id": 1, "name": "1" }
]
1
2
3

# 客户端调用云函数

请求 POST /api/execFunction,验签规则见 接口规范。

# 请求头

参数名 必选 类型 说明
Content-Type 是 string JSON 时传 application/json
askKey 是 string 验证 app 的令牌
sign 否 string 开启验签时必传
time 否 string 开启验签时必传(毫秒时间戳)
apiUserToken 否 string 用户令牌
nonce 否 string 开启 V3 验签必传,6分钟内不可重复

# 请求体

参数 必选 类型 说明
name 是 String 云函数名称
params 否 Object 传给云函数的自定义参数(展开到全局)

# 请求示例

{
    "name": "getUserList",
    "params": {
        "status": "1"
    }
}
1
2
3
4
5
6

对应云函数内可写:

var param = {
    where: [
        { reg: 'eq', column: 'status', value: status }
    ],
    pc: { p: 1, s: 100 }
};
return potato.selectList('users', param);
1
2
3
4
5
6
7

# 返回示例

{
    "code": "200",
    "message": "",
    "status": true,
    "data": [
        { "name": "1", "id": 1 }
    ],
    "pc": null,
    "time": null,
    "nonce": null,
    "sign": null,
    "reqSign": null
}
1
2
3
4
5
6
7
8
9
10
11
12
13

# 返回参数说明

参数名 类型 说明
code string 200 成功;203 无数据;403 权限异常或登录超时;500 请求异常
status boolean/int 业务状态
data array 查询结果列表
pc object 分页信息(若有)
nonce string V3 验签时返回
sign string 开启验签时返回(响应签名)
reqSign string 请求签名
time long/string 开启验签时返回

# 备注

lastUpdate: 9/3/2026, 5:11:12 PM