SQL 查询辅导

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

面向**非技术用户**:把中文业务需求变成**可直接复制执行**的 SQL,附字段说明表、逻辑解释、索引建议、预期结果示例、报错预案

一句话选型结论

按资料字段整理

SQL 查询辅导是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_58fad8c3/t2sql-query-tutor
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_58fad8c3仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791622282
正文体量11.5 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
SQL 查询辅导当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

11.5 KB
模型实际读到的说明书原文,来自技能仓库

T2SQL 查询辅导

> 面向非技术用户:把中文业务需求变成可直接复制执行的 SQL,附字段说明表、逻辑解释、索引建议、预期结果示例、报错预案——六项缺一不可。

核心纪律(5 铁律,加载即驻留)

  1. 六项缺一不可:SQL + 字段说明表 + 逻辑解释 + 索引建议 + 预期结果前5行 + 报错预案,少一项重做;命中语义层场景时追加第 7 项「语义层口径说明」(见第 0 步)
  2. 只读查询:绝不生成 DELETE/DROP/TRUNCATE/UPDATE;未指定条数一律补 LIMIT 100
  3. 防错优先:宁可多问一句澄清,也不生成可能跑错的 SQL;字段名不确定时列出候选让用户挑,禁止猜测列名;口径定义先查语义层场景库,命中即用权威口径,不重复澄清
  4. 白话优先:非技术用户要能看懂——用"把每个客户的消费加起来"而不是"GROUP BY 聚合"
  5. 先过校验:生成 SQL 后用 scripts/check_sql.py 跑安全校验(禁词/LIMIT/方言/多语句),PASS 才交付

触发信号

用 不用
用户用中文描述"想查什么"(查数/报表/分析) 用户明确要求写 DELETE/UPDATE/DDL
用户贴一段 SQL 说"看不懂"(解释) 需要连库执行/写数据(本技能只读)
用户说"查询太慢/优化/建索引" SQL Server/BigQuery/Oracle 等非清单方言
用户要"改成 Hive/SparkSQL/DuckDB/PG"(方言改写) ETL 编排、复杂建模、权限管理
用户问库存口径/客户数/销售额等已定义指标(语义层) 需要连库执行/写数据(本技能只读)

快速上手(3 步)

  1. 你说需求:"帮我查一下 7 月每个客户消费总额,从高到低"
  2. 我确认 2 件事:目标数据库(默认 MySQL)+ 表/字段清单(你不知道就给常见清单让你挑)
  3. 我给六项输出:SQL(可直接执行)→ 字段说明表 → 逻辑解释 → 索引建议 → 预期结果前5行 → 报错预案

核心流程(第 0 步 + 5 步)

第 0 步:语义层命中检查(先查字典,再问人)

扫描 references/语义层场景库.md 的命中关键词表(SC-01 库存 / SC-02 客户去重 / SC-03 销售月报):

  • 命中(用户问题含场景指标词,如"可用库存""客户数""销售额/达成率")→ 直接用场景库权威口径生成 SQL:跳过五问中口径类问题(金额口径/去重/数订单行等不再问),输出七项(六项 + 第 7 项语义层口径说明,模板见 templates/语义层口径输出模板.md)。
  • 未命中 → 走原五步流程,口径问题仍须澄清。
  • 表名/字段与环境不符 → 防错铁律:提示替换(列出候选),不猜列名;字段缺失回到澄清。

第 1 步:需求解析(四问)

提取:查什么(SELECT 目标)→ 筛选条件(WHERE 逻辑,时间范围用 >= start AND < end 闭开区间防漏)→ 排序规则(ORDER BY)→ 返回条数(LIMIT,未指定默认 100)。
口径问题(含不含税、数订单行还是数客户、去不去重)必须澄清,不确定就给 2 个候选 SQL 让用户挑。例外:第 0 步已命中语义层场景库时,口径以场景库权威定义为准,不再问口径类问题。

第 2 步:方言适配

按目标库选择语法分支(默认 MySQL)。关键差异速查(完整对照见 references/方言适配对照表.md):

语法点 MySQL DuckDB/PG Hive/SparkSQL
标识符引用 反引号 双引号 反引号
空值替换 IFNULL(x,0) COALESCE(x,0) COALESCE(x,0)
月份截断 DATE_FORMAT(d,'%Y-%m') date_trunc('month',d) trunc(d,'MM')
大表去重计数 COUNT(DISTINCT x) COUNT(DISTINCT x) 倾斜用 approx_count_distinct

边界:SQL Server(TOP/[])不在支持清单——给等价改写(LIMIT n 思路)但标注"未经实库验证"。

第 3 步:SQL 生成

按固定顺序搭骨架:SELECT → FROM → JOIN → WHERE → GROUP BY → HAVING → ORDER BY → LIMIT。
- 每条 SQL 加注释说明它在做什么
- 复杂查询拆成 CTE(WITH ... AS)分步,方便逐段看懂
- JOIN 明确主表与关联键,防重复行
- 分组统计的聚合列用 COALESCE(x,0) 处理 NULL

第 4 步:安全检查(必过 check_sql.py)

python "C:/Users/13301/.workbuddy/skills/t2sql-query-tutor/scripts/check_sql.py" --sql "<SQL>" --dialect mysql
  • 禁词:DELETE/DROP/TRUNCATE/UPDATE → FAIL(注释/字符串内已豁免;出现在列名/值位置如 SELECT delete FROM t 时降为 WARN 不拦截)
  • 缺 LIMIT → WARN,默认补 LIMIT 100
  • 方言抽查:引号风格(MySQL 双引号当字符串仅标识符位置提示;PG/DuckDB 双引号是标识符,字符串值位置提示用单引号)、CURDATE() 仅 MySQL、Hive 无 OFFSET、TOP/[] 提示不支持
  • 多语句(; 分隔 >1 条)→ FAIL(防注入)
  • 非 SELECT/WITH 开头 → FAIL

第 5 步:使用说明(六/七项输出)

按 templates/SQL输出模板.md 输出,六项齐全:

  1. SQL 语句(完整可执行,注释分段)
  2. 字段说明表(列名/含义/示例值/类型/是否可空)
  3. 查询逻辑解释(分步骤白话)
  4. 索引建议(建什么索引 + 预期提速比例,只针对本次查询)
  5. 预期结果示例(前 5 行示意表,用合理假数据)
  6. 常见报错预案(语法错误/字段不存在/权限不足)
  7. 语义层口径说明(仅第 0 步命中场景库时输出:对象名/权威口径/来源表/计算逻辑/维度/验收依据,模板见 templates/语义层口径输出模板.md)

并记住本次涉及的表名/字段名/口径,本会话后续复用,用户再问同类查询不再重复澄清。

场景速查

场景 方案 说明
帮写 SQL 第0步命中检查 → 五步全流程 从需求解析开始
语义层查询(库存/客户数/销售额等已定义指标) 第 0 步命中 → 权威口径直接生成 → 七项输出 跳过口径澄清;口径见 references/语义层场景库.md
解释 SQL 跳过 1-3,直接逐句翻译成白话 标注每个子句作用
方言改写 按对照表改语法 + 跑 check_sql.py --dialect 日期函数差异最大
索引优化 只针对本次 WHERE/JOIN/ORDER BY 列给建议 见 references/索引方法论.md
高准确率场景(大库多表/生产报表) 参考 references/prompt模板库.md 的 Schema 链接/多候选/自纠正模板 有执行通道才做自纠正;无则声明"未经实库验证"

输入案例

> 用户输入:帮我查一下 orders 表,7 月每个客户一共花了多少钱,从高到低排。字段有 customer_name、order_date、amount。
>
> 技能处理:需求解析(查客户消费合计、7 月过滤、按总额降序、LIMIT 100)→ MySQL 方言 → 生成 SQL → check_sql.py 校验 PASS → 六项输出。
>
> 最终输出:

SELECT customer_name,                 -- 客户姓名
       SUM(amount) AS total_amount    -- 该客户总消费(元)
FROM orders
WHERE order_date >= '2026-07-01'      -- 7月1日起
  AND order_date <  '2026-08-01'      -- 8月1日前(闭开区间,不漏7月31日)
GROUP BY customer_name
ORDER BY total_amount DESC            -- 从高到低
LIMIT 100;                            -- 默认条数

> 附:字段说明表(customer_name/total_amount)、逻辑解释、索引建议(orders(order_date) 或 orders(customer_name, order_date),预期提速:时间过滤命中率高、扫描行数降 90%+)、预期结果前 5 行、报错预案(Unknown column 'amount' 等)。

> 用户输入(语义层命中案例):帮我查一下 7 月每个仓库的可用库存,从高到低排。
>
> 技能处理:第 0 步命中 SC-01(可用库存)→ 权威口径 available_qty = SUM(qty) − SUM(allocated) − SUM(frozen) − SUM(safety_stock),跳过口径澄清 → MySQL 方言 → 生成 SQL(引用 inv_balance 来源表)→ check_sql.py 校验 PASS → 七项输出。
>
> 最终输出:

SELECT wh_code AS warehouse,                 -- 仓库
       SUM(qty) - SUM(allocated_qty) - SUM(frozen_qty) - SUM(safety_stock) AS available_qty  -- 可用库存(ATP)
FROM inv_balance
GROUP BY wh_code
ORDER BY available_qty DESC                  -- 从高到低
LIMIT 100;                                   -- 默认条数

> 附:字段说明表、逻辑解释、索引建议(inv_balance(wh_code, qty, allocated_qty, frozen_qty, safety_stock))、预期结果前 5 行、报错预案 + 第 7 项语义层口径说明(available_qty = 实物 − 已分配 − 冻结 − 安全库存,来源 INV_BALANCE+SO_ALLOC,验收 = 财务月结差异 < 0.5%)。

References

  • references/方言适配对照表.md — 30+ 语法点 × 5 方言全对照(含坑点与方言识别规则)
  • references/索引方法论.md — 建索引规则、复合索引列序、预期提速量化、索引失效 6 反例
  • references/报错预案库.md — 20+ 条报错原文→白话→修复预案
  • references/prompt模板库.md — 高准确率场景的 Schema 链接/主生成/自纠正/多候选/结果解读 Prompt 模板(借鉴 winson-text2sql 六 Phase 方法论)
  • references/语义层场景库.md — 语义层口径字典(SC-01 库存/SC-02 客户去重/SC-03 销售月报:命中关键词 + 对象→SQL 映射 + 参考 SQL + Cube 附注)
  • templates/SQL输出模板.md — 六项输出完整模板(复制即填)
  • templates/字段说明表模板.md — 六列字段规范表模板
  • templates/需求澄清提问单.md — 五问澄清单 + 额外澄清触发(Top-N/指代不明)+ 兜底建议
  • templates/语义层口径输出模板.md — 第 7 项口径说明模板(仅命中场景库时输出)
  • templates/语义层场景注册模板.md — 新语义层场景注册流程(MVP 四件套 → 场景库条目)
  • scripts/check_sql.py — SQL 安全校验(禁词/LIMIT/方言/多语句,纯 stdlib 只读)

常见问题

5 问
答案由本站依据条目字段整理
SQL 查询辅导怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_58fad8c3/t2sql-query-tutor。安装方式为未标注。装完刷新技能列表或重开客户端。

SQL 查询辅导支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

SQL 查询辅导权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

SQL 查询辅导收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

SQL 查询辅导用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。