办公应用

ChatGPT 写 SQL 查询:先说清一行代表什么

用订单与订单明细的虚构结构检查JOIN重复计数,给出预期样本与只读查询约束。

订单表:一行一订单;明细表:一行一商品;统计目标:done 订单 2 笔;重复检查:新增明细不增数
本站原创方法示意;材料为编辑练习,不是官方界面或模型实测。查看大图 ↗

表能连接,不代表可以直接数行

让ChatGPT写“统计完成订单数”,需要先说明数据库类型、表结构和计数口径。订单表一行一个订单,明细表一行一个商品;直接JOIN之后COUNT(*)可能把一笔订单数成多笔。本文示例只讨论查询草稿,不连接真实数据库。

三笔订单的最小样本

orders包含id与status:1为done,2为done,3为pending。order_items包含order_id与sku:订单1有A和B两条,订单2有C一条,订单3有D一条。统计所有done订单应为2,不需要明细表。若统计“有明细的done订单”,本样本仍为2,但要说明这项条件。

第一种可用SELECT COUNT(*) FROM orders WHERE status = 'done';。第二种可在JOIN后用COUNT(DISTINCT o.id),或使用EXISTS表达有明细条件。不能只为让样本结果看起来正确而选择某种写法,业务口径决定查询。状态done在这里仅表示处理完成,不代表实收收入。

订单1和2状态done、分别有两条和一条明细,订单3状态pending;完成订单两笔,不能把三条明细计作三笔订单
本站原创方法示意;材料为编辑练习,不是官方界面或模型实测。查看大图 ↗

可复制提示词

为下面的虚构表结构与数据写只读SQL【粘贴】,数据库类型为SQLite。目标是统计status='done'的订单数,每个orders.id只计一次。先解释是否需要连接明细表,给预期结果,再给SELECT查询。若另要求有明细才计数,单独给出方案并解释差异。不写更新、删除或建表语句;没有字段时不要猜名字。

验证一个有辨别力的反例

给订单1再加一条明细,完成订单数仍应为2。删去订单2的明细后,“所有done订单”仍为2,“有明细的done订单”变为1。这个反例能区分两种口径,不只是运行一次看是否报错。真实业务还要确认重复id、空值与状态历史。

上线前检查环境

在隔离练习库或只读环境验证结果,并检查执行计划与数据规模。这里只验证小样本逻辑,不承诺真实数据库的性能或权限安全。先读懂查询,再交由有权限的负责人使用。

材料与核查说明

本文练习、提示词与图示由本站编辑原创,不是官方界面或模型实测。通用提问方法参考 OpenAI 官方文档,核查于2026年10月15日;具体样本的核对点来自本文给出的规则。实际结果仍须回到原始材料检查。

试试这个提示词
为下面的虚构表结构与数据写只读SQL【粘贴】,数据库类型为SQLite。目标是统计status='done'的订单数,每个orders.id只计一次。先解释是否需要连接明细表,给预期结果,再给SELECT查询。若另要求有明细才计数,单独给出方案并解释差异。不写更新、删除或建表语句;没有字段时不要猜名字。

把方法变成一次练习。

工具站的实际功能与费用以目标站说明为准。

打开工具,试试这个方法 ↗
参考资料

OpenAI 官方提示词指南。范例由本站整理,不代表产品效果承诺。

工具入口

工具即将接入

当前入口尚未开放。你可以先阅读教程,或复制提示词保存使用。