本文根据 OpenAI Academy《Prompting》、帮助中心《Data analysis with ChatGPT》《Working with writing blocks and code blocks in ChatGPT》整理,资料核对于 2026-11-05。配图为本站整理的示意图,不是界面截图。本站(bigolab.com)不是 OpenAI 官方网站。官方没有专门的「写 SQL」文章,下面是把官方提示方法用到 SQL 上,提示词是本站示范。
适用于谁
- 会一点 SQL,但复杂的多表联查、窗口函数经常写不对的人;
- 运营、分析岗,想用自然语言描述需求、拿到可修改查询的人;
- 被数据库报错卡住,看不懂提示的人。
结论先说
- ChatGPT 不会连你的数据库。 官方数据分析页写明,数据分析用的环境不能发起外部网络请求或 API 调用。它只能根据你贴的表结构写语句,不能替你执行、也看不到你的真实数据。
- 必须说清数据库类型和版本。 MySQL、PostgreSQL、SQL Server、SQLite 的日期函数、分页、字符串处理都不同。写错数据库,语句经常跑不了。
- 只贴表结构,不贴真实数据。 表名、列名、类型、主外键足够;客户姓名、手机号等敏感数据别发。需要示例就自己编几行假数据。
- 查询类先在测试库跑;增删改要先备份。
UPDATE、DELETE、DROP一律先改成SELECT看影响范围,再决定执行。 - 结果要自己核对。 官方提示指南建议重要工作让它再检查一遍,然后自己审阅。

图:本站根据 OpenAI 帮助中心:Data analysis with ChatGPT 整理的示意图
一、4 段可以直接复制的提示词
1. 描述表结构,生成查询
数据库:[PostgreSQL 15]。表结构如下:
orders(id bigint 主键, user_id bigint, amount numeric, status text, created_at timestamp)
users(id bigint 主键, city text, registered_at timestamp)
需求:统计 [2026 年 10 月] 每个城市已支付(status = 'paid')订单的数量、总金额和客单价,按总金额从高到低,只取前 10 个城市。
请给出 SQL,并用 3 句话解释每一步在做什么。说明你对字段含义做了哪些假设。
2. 解释报错并修正
我在 [MySQL 8.0] 里运行下面的 SQL,报错:[粘贴完整报错]。
SQL:[粘贴]
表结构:[粘贴]
请先解释报错的原因,再给修正后的 SQL,并指出这类错误以后怎么避免。如果还需要我提供信息才能确定原因,先问我。
3. 优化慢查询
这条 [PostgreSQL] 查询很慢:[粘贴 SQL]。EXPLAIN (ANALYZE) 的输出:[粘贴]。表大约 [500 万] 行,现有索引:[粘贴]。
请指出最可能的瓶颈,给出 2 到 3 个优化方案,并说明每个方案的代价(比如多占空间、写入变慢)。不要直接让我删索引或改表,先给我评估方法。
4. 解释别人写的 SQL
请用通俗中文逐段解释下面这段 SQL,说明它在业务上算的是什么,并指出:有没有可能重复计数、空值处理不当、时区或日期边界的问题。
[粘贴]
提示词的通用写法见 /guides/how-to-write-prompts。代码块的复制和编辑方式,见官方《Working with writing blocks and code blocks in ChatGPT》。
二、自己必须核对什么

图:本站根据 OpenAI Academy:Prompting 整理的示意图
- 语法是否匹配你的数据库:不确定的函数,查对应数据库官方文档;
- 字段和表名:它可能用你没提供的列名,运行前逐个对照;
- 业务口径:“已支付”“活跃用户”怎么定义,它只能按你写的猜;
- 重复和空值:联表后行数是否被放大,
NULL是否被误排除; - 增删改:先写成
SELECT看行数,再在测试库执行,生产库操作前备份并在事务里验证; - 性能:大表上的查询先看执行计划,别在业务高峰跑;
- 权限和数据安全:不要把账号密码、真实用户数据贴进对话,见 /guides/ai-privacy-data-safety-checklist。
常见问题
Q:能直接上传 CSV 让它查吗?
可以。官方数据分析功能支持 CSV 等表格文件,它会用 Python 处理,见 /guides/chatgpt-excel-data-analysis;这和对真实数据库跑 SQL 是两回事。
Q:它写的 SQL 在我这里跑出来结果不对?
把你期望的结果、实际结果、几行样例数据一起贴回去,让它排查口径和关联条件,比只说“不对”有效。
Q:免费版够用吗?
写和解释 SQL 免费账号能做;长对话和反复调试会遇到使用限制,需要更多额度可以看看 /chongzhi/chatgpt-plus。
参考资料
- OpenAI Academy:Prompting — https://openai.com/academy/prompting/
- OpenAI 帮助中心:Data analysis with ChatGPT — https://help.openai.com/en/articles/8437071-data-analysis-with-chatgpt
- OpenAI 帮助中心:Working with writing blocks and code blocks in ChatGPT — https://help.openai.com/en/articles/20001246-working-with-writing-blocks-and-code-blocks-in-chatgpt
- OpenAI 帮助中心:Uploading files and audio to ChatGPT — https://help.openai.com/en/articles/8555545-file-uploads-faq
0 条评论
还没有评论,来抢沙发~