作为在小团队或独立工作室做游戏的开发者,你可能也有同感:策划、程序、美术、文案和社区运营都要兼顾,原型迭代时间紧。很多人知道要查什么数据,但写 SQL 时卡在关联、分组和窗口函数上。下面以游戏开发者的真实场景为例,演示用 AI 写 SQL 查询的完整流程:提供表结构和字段含义,用自然语言描述需求,让 AI 写 SQL 并解释每一步,再用小范围数据验证。

典型场景

游戏开发者需要从数据库里查“测试反馈”相关的数据:按关卡统计最近一个月的通关时长分钟,还要和上个月对比。数据团队排期很满,自己写 SQL 又总是出错。

推荐工具

可以用 ChatGPT、Claude、DeepSeek 等对话助手,也可以用数据库客户端或 BI 工具内置的 AI 查询功能(如 DataGrip、DBeaver 的 AI 助手,以及不少 BI 平台的自然语言查询)。

举个例子

先看一个虚构但很典型的例子。小孙是一位在小团队或独立工作室做游戏的开发者,这周手头的事情包括“编写 20 条道具描述文案”和“优化移动端性能”,偏偏这时又需要写 SQL 查询。小孙没有从空白页开始,而是先花几分钟把相关材料整理好,按下面的提示词交给 AI,拿到初稿后对照原始资料逐条核对,再补上自己的判断。整个过程中,小孙特别留意不把未公开的游戏设定和源代码放进对话里。

分步操作

  1. 提供表名、字段名、字段类型和含义,不需要真实数据
  2. 用自然语言描述需求,最好附上期望结果的样子
  3. 让 AI 解释 SQL 的每个部分
  4. 先加 LIMIT 在测试库或小范围运行,核对结果

提示词模板(可直接复制)

提示词的关键是把背景、要求和输出格式写清楚:

【背景】身份:在小团队或独立工作室做游戏的开发者;平时主要和玩家和制作人打交道。
数据库:MySQL 8.0
表 records(测试反馈),字段:
- id:主键
- category:关卡,文本
- record_date:测试日期,DATE
- amount:通关时长分钟,数值
- type:反馈类型,文本

需求:
1. 统计 2026 年 10 月每个 category 的 amount 合计和记录数
2. 同时给出 9 月的合计,以及环比变化百分比
3. 按 10 月合计从高到低排序

请写出 SQL,并逐段解释;如果 9 月没有数据,环比显示为 NULL。

效果示例(虚构演示)

示例输出如下(虚构内容,仅演示 AI 大致会给出什么样的结果):

WITH m AS (
  SELECT category,
         SUM(CASE WHEN record_date >= '2026-10-01' AND record_date < '2026-11-01' THEN amount END) AS oct_total,
         COUNT(CASE WHEN record_date >= '2026-10-01' AND record_date < '2026-11-01' THEN 1 END) AS oct_cnt,
         SUM(CASE WHEN record_date >= '2026-09-01' AND record_date < '2026-10-01' THEN amount END) AS sep_total
  FROM records
  WHERE record_date >= '2026-09-01' AND record_date < '2026-11-01'
  GROUP BY category
)
SELECT category, oct_total, oct_cnt, sep_total,
       ROUND((oct_total - sep_total) / NULLIF(sep_total, 0) * 100, 1) AS mom_pct
FROM m
ORDER BY oct_total DESC;

解释:先用条件聚合一次算出两个月的数据,NULLIF 避免除以 0,WHERE 限定时间范围以利用日期索引。

注意示例中所有内容都是虚构的。实际使用时,AI 的输出质量取决于你提供的材料是否完整、要求是否具体。

注意事项与技巧

  • 不同数据库的语法有差异,一定说明数据库类型和版本。
  • 先在测试库或加 LIMIT 运行,大表上的错误查询可能拖慢数据库。
  • AI 不知道你们的业务口径(比如是否剔除退款),要在需求中写明。

给游戏开发者的特别提醒

写游戏逻辑时让 AI 给出伪代码和边界情况,再落实到具体引擎。还有一点很关键:AI 生成的美术和文本在商业游戏中使用前,要确认工具的商用授权和平台政策。

一个容易被忽略的习惯:用 AI 批量生成道具、角色和任务文案初稿,再统一世界观和语气。

举一反三

  • 转换方言:把 MySQL 语句改写成 PostgreSQL 或其他数据库的写法。
  • 生成测试数据:让 AI 写插入语句,构造用于验证的样例数据。

相关阅读