用 ChatGPT 写 SQL:描述表结构生成查询、解释报错和优化慢查询,先在测试库跑再上线

怎么用 ChatGPT 写 SQL?把数据库类型、表结构和你要的结果说清,让它生成查询、解释报错、分析慢查询。本文给 4 段提示词,并说明它连不上你的数据库,生成的语句要先在测试库验证,增删改必须有备份。

NNathaniel bigo··原创首发·AI 辅助撰写
6 分钟读完
资料核对于 2026-11-05 · 依据官方文档与公开资料整理 免费账号 账号
本文根据 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,但复杂的多表联查、窗口函数经常写不对的人;
  • 运营、分析岗,想用自然语言描述需求、拿到可修改查询的人;
  • 被数据库报错卡住,看不懂提示的人。

结论先说

  1. ChatGPT 不会连你的数据库。 官方数据分析页写明,数据分析用的环境不能发起外部网络请求或 API 调用。它只能根据你贴的表结构写语句,不能替你执行、也看不到你的真实数据。
  2. 必须说清数据库类型和版本。 MySQL、PostgreSQL、SQL Server、SQLite 的日期函数、分页、字符串处理都不同。写错数据库,语句经常跑不了。
  3. 只贴表结构,不贴真实数据。 表名、列名、类型、主外键足够;客户姓名、手机号等敏感数据别发。需要示例就自己编几行假数据。
  4. 查询类先在测试库跑;增删改要先备份。 UPDATE、DELETE、DROP 一律先改成 SELECT 看影响范围,再决定执行。
  5. 结果要自己核对。 官方提示指南建议重要工作让它再检查一遍,然后自己审阅。

用 ChatGPT 写 SQL 的流程:说明数据库和表结构、生成查询、测试库验证、核对结果、再上线

图:本站根据 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》。

二、自己必须核对什么

SQL 上线前自己必须核对的清单:数据库语法、测试库验证、影响行数、索引、权限、备份

图:本站根据 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

Nathaniel 的更多内容

  1. 01

    用 ChatGPT 设计调查问卷:先定研究问题、写题目和选项、查诱导和歧义,发放前先小范围试填

    怎么用 ChatGPT 设计调查问卷?先说明调查目的、对象和要回答的问题,再让它出题目和选项、检查诱导性和歧义、整理成问卷平台能导入的格式。本文给 4 段提示词,并提醒样本、隐私合规和试填要自己做。

    ChatGPT0
  2. 02

    家长用 ChatGPT 批改孩子作文、写期末评语:按年级和评分点给反馈,不代写,孩子信息要脱敏

    家长能用 ChatGPT 批改孩子作文、写评语吗?可以把它当辅助:先给年级和老师的评分要求,按优点、问题、修改方向给反馈,不代写、不直接打分定论。本文给 4 段提示词,并提醒脱敏、不上传孩子隐私,最终以老师为准。

    ChatGPT0
  3. 03

    用 ChatGPT 做项目计划和甘特图:先拆任务和依赖,再生成 Mermaid 甘特图或表格,工期自己核对

    怎么用 ChatGPT 做项目计划和甘特图?先说明目标、截止日期、人员和约束,让它拆任务、排依赖,再输出 Mermaid gantt 代码块预览,或输出表格复制到 Excel。本文给 4 段提示词,并说明工期和依赖要自己核对。

    ChatGPT0
  4. 04

    用 ChatGPT 读财报:看懂三张表、提取关键数字,只用上传的原文、每个数字回原文核对,不构成投资建议

    想用 ChatGPT 读财报、看懂资产负债表利润表现金流量表?先上传公司披露的原文,限定只用文件内容、每个数字附页码,再分表提问。本文给 4 段提示词,并说明扫描件会读错、所有数字必须回原文核对,不构成投资建议。

    ChatGPT0
  5. 05

    用 ChatGPT 写 Python 小脚本做办公自动化:批量重命名文件、合并多个 Excel,先备份再运行

    不会编程也能让 ChatGPT 写 Python 脚本批量重命名文件、合并多个 Excel。本文给 4 段提示词:先描述文件夹结构,要求脚本先「只预览不改动」,再正式执行;并说明它的运行环境不是你的电脑,运行前必须备份。

    ChatGPT0
  6. 06

    用 ChatGPT 写正则表达式:说明语言和样例、让它逐段解释并给测试用例,自己用样本验证

    怎么用 ChatGPT 写正则表达式?先说明语言或工具、给出该匹配和不该匹配的样例,让它生成、逐段解释并补测试用例。本文给 4 段提示词,并说明不同语言正则方言不同,结果要在自己的环境里用样本验证。

    ChatGPT0

同产品的其他教程

  1. 01

    用 ChatGPT 背单词:做单词表、写例句、出自测题和错题复习,词义和用法自己查词典核对

    怎么用 ChatGPT 背单词?先给它你的词表和水平,让它做带例句的单词表、分批出自测题、把错词单独复习,再导出表格。本文给 4 段提示词,并说明词义、搭配和例句仍要用权威词典核对。

    ChatGPT0
  2. 02

    用 ChatGPT 批改英文作文、雅思托福写作和英文润色:贴上官方评分标准再问,分数只能当参考

    想用 ChatGPT 批改英文作文、雅思托福写作,或做英文校正润色?关键是先把考试官方评分标准贴给它,分开问语法、结构和用词,并要求保留你的原意。本文给 4 段提示词,并说明 AI 给的分数不等于真实考试分数。

    ChatGPT0
  3. 03

    用 ChatGPT 做一周菜单、按冰箱食材出菜谱:拍照上传、列限制条件,过敏和食品安全自己核对

    想让 ChatGPT 做一周菜单,或拍一张冰箱照片按现有食材出菜谱?先说明人数、口味、预算、过敏和厨具,再让它列采购清单。本文给 4 段提示词,并说明图片识别会认错、过敏和保质期必须自己核对。

    ChatGPT0
  4. 04

    用 ChatGPT 做健身计划:先交代身体情况和器材、按周迭代,不能代替医生和教练

    能用 ChatGPT 做健身计划吗?可以用来排周计划、记录和复盘,但不能代替医生或教练。本文给 4 段提示词:先说明目标、基础、伤病和器材,再按周调整,并列出动作、强度和饮食必须自己核对的地方。

    ChatGPT0
  5. 05

    用 ChatGPT 写歌词、写诗:先定主题和韵脚、分段迭代,别让它照抄现成歌词

    想用 ChatGPT 写歌词或写诗,先把主题、情绪、体裁、押韵和字数说清,再按段落一轮轮改。本文给 4 段可复制的提示词,并提醒:别让它仿写或复述现成歌词,成稿的韵脚、平仄和原创性要自己核对。

    ChatGPT0
  6. 06

    用 ChatGPT 起名字:公司名、品牌名、宝宝名怎么问,附 5 段可复制提示词和查重、商标自查提醒

    怎么用 ChatGPT 给公司、品牌、产品、宝宝起名?按官方提示指南:说清用途、风格、限制和不要的方向,批量出候选再分轮筛选。本文给 5 段提示词,并说明重名、谐音、商标和注册要自己去官方渠道查。

    ChatGPT0

0 条评论

登录 后参与评论

还没有评论,来抢沙发~