SuperAPI AI 工具集

sf-soql

数据与分析

查看项目

更新于 10-15 22:40

技能介绍

用途:在需要编写或优化 Salesforce SOQL/SOSL 时使用,覆盖自然语言生成查询、关系查询、聚合查询、查询计划分析,以及性能与安全性改进。涉及 .soql 文件、语法与 governor 限制设计时由本技能负责。批量数据操作交给 sf-data,查询逻辑嵌入 Apex 交给 sf-apex,通过日志排查交给 sf-debug。

使用前需收集:目标对象、所需字段、过滤条件、排序与限制要求、查询用途(展示、自动化、类报表分析或 Apex 使用),以及是否已关注性能与选择性。

推荐流程:先生成最简单且正确的查询,只取必要字段、明确 WHERE 条件、适当 LIMIT、按需控制关系深度;再选择合适查询形态——子到父用关系遍历,父到子用子查询,计数与汇总用聚合查询,有无关联记录用半连接/反连接,跨对象文本搜索用 SOSL;随后检查索引与选择性过滤、避免多余字段和扫描型通配符、考虑安全模式与字段访问要求;如需运行时验证,交由 sf-data 执行。

高信号规则:不要用 SELECT * 式思维,只查必需字段;Apex 中不要在循环内查询;优先在 SOQL 中过滤而非 Apex 后置过滤;计数与分组汇总用聚合而非加载多余记录;谨慎使用通配符,前导通配符常使索引失效;查询进入 Apex 时考虑安全模式与字段访问。

输出顺序:查询目的、最终 SOQL/SOSL、选择该形态的原因、优化或安全说明、必要时给出执行建议。评分:90+ 为生产级优化查询,80–89 良好但可小幅改进,70–79 可用但仍有性能隐患,低于 70 需修订后再用于生产。参考文档包括 soql-syntax-reference.md、query-optimization.md、cli-commands.md 等。