SQL 查询生成
基于 TE 系统数据规范和 Trino SQL 语法,从业务需求自动生成合规的查询 SQL,配套事件表/用户表结构和分区字段规范,让 SQL 编写从"凭记忆猜测"升级为"按规范生成"。
Generate SQL Skill 是 ThinkingAI 行业 Skill 库中的一项 SQL 生成能力,帮助数据与运营团队基于 TE 系统数据规范(事件表/用户表结构、分区字段、字段命名规则)和 Trino/Presto SQL 语法,从业务需求自动生成合规的查询 SQL——覆盖单事件查询、多事件查询、事件+用户关联查询、异常玩家排查等常见场景,让 SQL 编写从"凭记忆猜测字段名和分区条件"升级为"按规范生成零语法错误"的精准模式。这正是 ThinkingAI「10 年行业经验沉淀为开箱即用 Skill」的体现。
行业痛点
TE 系统的 SQL 查询是数据洞察的重要手段,但超过 60% 的写 SQL 团队踩到同样的坑:不知道事件表名是 ta.v_event_{project_id},不知道必须加 $part_date 和 $part_event 分区条件,否则查询极慢;不知道字段名必须加双引号避免 Trino 识别错误;不知道 group by 不能用 select 别名。凭记忆写的 SQL 语法错误率超过 40%,慢查询比例超过 50%。
核心价值
- TE 数据规范内置:事件表(ta.v_event_{project_id})和用户表(ta.v_user_{project_id})的结构、分区字段、关键字段全部内置
- 分区字段强制:$part_date 和 $part_event 必须出现在 WHERE 条件中,避免全表扫描导致慢查询
- Trino 语法合规:字段名加双引号、group by 用原字段名或位置编号不能用别名、默认 limit 100 限制结果量
- 4 种常见场景模板:单事件查询、玩家行为查询、事件+用户关联查询、异常玩家排查,按场景自动选择模板
- 不猜测不随机:project_id、事件名、属性名全部从上下文或 MCP 查询获取,不随机生成
适用场景
需要编写查询特定事件数据的 SQL(如查询注册用户的渠道分布)
需要编写查询特定玩家行为序列的 SQL(如查看某玩家的登录/付费行为)
需要编写关联事件表和用户表的 SQL(如查询付费用户累计充值金额)
需要编写排查异常玩家的 SQL(如查看某渠道玩家的事件分布和异常模式)
需要确认 TE 系统的事件表/用户表结构和分区字段规范
已有报表/MCP 能覆盖的数据需求优先用 ae-analysis 而非手动写 SQL
实战案例
常见疑问
为什么必须加分区条件?
TE 事件表按日期($part_date)和事件名($part_event)分区,不加分区条件会触发全表扫描导致查询极慢甚至超时。
为什么字段名要加双引号?
Trino/Presto SQL 中不加双引号的标识符会被自动转为小写,导致与 TE 系统实际字段名不匹配。加双引号可保留原始大小写。
和 ae-analysis 有什么区别?
如果数据需求可通过 ae-analysis 的报表查询或 Builder Ad-hoc 覆盖,优先用 ae-analysis;generate-sql 仅在需要自定义 SQL 查询时使用。
相关 Skills 推荐
用「SQL 查询生成」武装你的 Agent
预约演示,看看它如何在你的业务场景中落地

