提示词
把下面这个问题写成 SQL。
问题:{{问题}}
数据库:{{数据库类型}}
表结构(只贴相关的表和字段,含类型):
{{表结构}}
要求:
1. 先列出你用到哪些字段、分别来自哪张表,以及你怎么理解表之间的关系(一对多还是多对多)。推断的关系要标注「推断,需确认」。
2. 给 SQL,只用上面出现过的字段名,一个都不能编。缺字段就停下来问我要。
3. 说明聚合口径:去重了吗、空值怎么处理、时间范围边界是开区间还是闭区间。
4. 给一版「先看 20 行」的抽样查询,用来验证明细对不对。开工前要交代清楚的信息
这几项没交代,模型就会自己假设一个填进去——大多数「答得不对」都是从这里开始的。
- {{问题}}:用业务语言写,别先翻译成SQL
- {{数据库类型}}:MySQL / PostgreSQL / SQLite,方言差别很大
- {{表结构}}:CREATE TABLE原文最省事
必须逐项过一遍
这一行活最容易漏的地方。已经写进提示词了,不用你再记。
- 「不许编字段」必须明确写,否则它会补一个看起来合理的列名。
- 抽样查询是验算的抓手,别省这一步。