getBatch 获取多条记录
getBatch 根据主键列表获取多条记录。
Luwak >= 3.0.0, asm.so >= 0.1.4
API
公共参数 metas 对象
名称 | 类型 | 描述 |
---|---|---|
token | string | 访问令牌,当需要授权才能访问时为必填 |
signature | string | 签名 |
appKey | string | 当需要签名时为必填 |
timestamp | string, number | 时间戳,当校验时间误差范围时为必填 |
请求参数
名称 | 类型 | 描述 |
---|---|---|
method | string | API 名称 |
params | array | API 参数 |
method 命名规范是 $entity.getBatch
params 参数是数组。
主键必须是单列主键。
响应结果
返回一个对象。
{
"data": [], // 包含多个数据的数组
"total": 0 // 找到多少条数据
}
示例
场景描述
获取品牌表中主键 id 为 1,2,3 的多条数据。
请求
{
"jsonrpc": "2.0",
"method": "smartPanda.mdh.brand.getBatch",
"params": [
1,
2,
3
],
"metas": {
"token": "44ea16b7-3aa1-41a5-81da-8ee9d2b840c2",
"signature": "44fbc88198f8f47e7d2ac1c26f6601a9",
"appKey": "NSEA4ETIpBlyB2l9",
"timestamp": 1740559281296
},
"id": "359279d8-23c4-48d4-8736-d3e1ae2673d3"
}
响应
{
"jsonrpc": "2.0",
"result": {
"data": [
{
"id": 1,
"name": "Luwak"
},
{
"id": 2,
"name": "Louis Vuitton"
},
{
"id": 3,
"name": "Channel"
}
],
"total": 3
},
"id": "359279d8-23c4-48d4-8736-d3e1ae2673d3"
}
实体定义
smart_panda 库中 brand 表的定义如下
CREATE TABLE `brand`
(
`id` int AUTO_INCREMENT,
`name` varchar(20),
PRIMARY KEY (`id`)
);
entity 名称是 smartPanda.mdh.brand
实际执行的 SQL
Prepare SELECT * FROM smart_panda.brand WHERE id IN (?, ?, ?)
Execute SELECT * FROM smart_panda.brand WHERE id IN (1, 2, 3)
Prepare SELECT COUNT(*) FROM smart_panda.brand WHERE id IN (?, ?, ?)
Execute SELECT COUNT(*) FROM smart_panda.brand WHERE id IN (1, 2, 3)