数据操作
这篇主要给 技能编写者、交付同学、Agent 维护者 看。业务人员一般只需要描述“我想查什么、改什么”,真正的数据命令通常由 Agent 在后台执行。
data 命令能做什么
data 是 Lovrabet Runtime CLI 里最常用的一组命令,主要分成两类:
- 读:查名单、查明细、查统计
- 写:补录、修正、删除
常见命令包括:
data filterdata getOnedata aggregatedata createdata batchCreatedata updatedata delete
所有 data 命令的共同点
基本都会围绕这两个参数展开:
--code:数据集 code,必填--params:JSON 参数,决定筛选条件、分页、写入内容等
也就是说,Agent 通常会先知道或先发现一个数据集 code,然后再带着 --params 真正执行读写动作。
读操作:查名单、查单条、查统计
1. data filter
适合:
- 查一批记录
- 做条件筛选
- 拉明细名单
lovrabet data filter --code <datasetCode> --params '{"where":{"status":{"$eq":"active"}},"currentPage":1,"pageSize":20}'
常见场景:
- 找近 7 天未发货订单
- 找近 30 天新增但未首单客户
- 找某个状态下的全部工单
2. data getOne
适合:
- 按
id或单条主键查一条记录 - 用来核对某条数据当前到底是什么状态
lovrabet data getOne --code <datasetCode> --params '{"id":123}'
3. data aggregate
适合:
- 按维度做汇总
- 出运营统计、对账统计、管理看板输入
lovrabet data aggregate --code <datasetCode> --params '{
"aggregate":[{"field":"amount","type":"SUM","alias":"total"}],
"groupBy":["status"]
}'
写操作:补录、修正、删除
1. data create
用于新增一条记录:
lovrabet data create --code <datasetCode> --params '{"name":"test"}'
2. data batchCreate
用于一次创建多条记录:
lovrabet data batchCreate --code <datasetCode> --params '[{"name":"a"},{"name":"b"}]'
3. data update
用于修改已有记录:
lovrabet data update --code <datasetCode> --params '{"id":123,"status":"completed"}'
4. data delete
用于删除记录:
lovrabet data delete --code <datasetCode> --params '{"id":123}' --yes
写操作前,一定记住两件事
第一件:先 --dry-run
写入类命令建议先预览:
lovrabet data update --code <datasetCode> --params '{"id":123,"status":"completed"}' --dry-run
--dry-run 会告诉你这次准备怎么调接口、带什么参数,但不会真的执行。
第二件:确认风险等级
create/batchCreate/update属于writedelete属于high-risk-write
如果当前 riskLevel 不够,CLI 会直接拦截。
如果是高危删除,在非交互模式下还必须显式带 --yes。
常见筛选写法
data filter 最常见的是 where 条件:
| 操作符 | 含义 |
|---|---|
$eq | 等于 |
$ne | 不等于 |
$gt / $gte | 大于 / 大于等于 |
$lt / $lte | 小于 / 小于等于 |
$in | 在某个集合里 |
$contain | 包含子串 |
$startWith / $endWith | 以...开头 / 结尾 |
$and / $or | 组合条件 |
例如:
lovrabet data filter --code <datasetCode> --params '{
"where":{
"$and":[
{"amount":{"$gte":100}},
{"status":{"$eq":"active"}}
]
}
}'
聚合时最常见的类型
| 类型 | 含义 |
|---|---|
SUM | 求和 |
COUNT | 计数 |
AVG | 平均值 |
MAX / MIN | 最大值 / 最小值 |
业务侧更应该怎么表达
业务人员与其说:
帮我执行
data aggregate
不如直接说:
帮我按仓库汇总近 7 天未发货订单数量
或者:
帮我把需求 241 的状态改成处理中,先预览再执行
这样 Agent 才能更自然地判断到底该走 filter、aggregate、update,还是先做数据集发现。
一句话总结
data 命令真正承接的是业务动作:
- 查名单 →
filter - 查单条 →
getOne - 查汇总 →
aggregate - 补录 / 修正 →
create/batchCreate/update - 删除 →
delete
对业务人员来说,重点不是记住这些名字,而是把业务对象、条件、结果和风险边界说清楚。