📦 sql-explain — SQL 查询解析与优化
v1.0.0分析和解释 SQL 查询执行计划,提供优化建议,支持 PostgreSQL、MySQL 和 SQLite 数据库。功能包括 SQL 解析、自然语言转 SQL、格式化、语法检查和性能优化建议。
0· 74·1 当前·1 累计
安全扫描
OpenClaw
安全
high confidence该技能内部一致于其声明目的(本地 SQL 格式化、简单 NL→SQL 和 EXPLAIN 文本分析),不请求额外凭据、网络访问或系统权限。
评估建议
该技能似乎是一个本地、自包含的 Python 工具,用于格式化、基本语法检查、NL→SQL 模板和解析 EXPLAIN 文本(主要为 PostgreSQL 风格)。在安装或运行前:(1)如果可能,请自行审查提供的 Python 源代码(sql_explain.py 和 cli.py)——它们很短且易读;(2)注意 EXPLAIN 解析器基于正则表达式,可能不完全支持所有 MySQL/SQLite EXPLAIN 变体,尽管文档声称有部分支持;(3)README/SKILL.md 提到付费层和历史保存,但没有持久性/遥测代码——如果您期望 Pro 功能,请问发布者如何存储数据/历史;(4)仅从 PyPI 安装依赖项 'sqlparse',避免在生产数据库上运行不受信任的 SQL。总体而言,包是连贯的,不请求额外权限或秘密。...详细分析 ▾
ℹ 用途与能力
代码与描述匹配:Python 文件实现格式化、简单语法检查、NL→SQL 模板、结构分析和 EXPLAIN 文本解析。小的不匹配:SKILL.md 提到使用 'sqlean' 解释模块或更广泛的 DB EXPLAIN 格式(Postgres/MySQL/SQLite),但提供的实现仅使用 sqlparse 和基于正则表达式的 EXPLAIN 文本解析(主要为 PostgreSQL 风格)。README/SKILL.md 还提到保存历史/Pro 功能,但代码中没有持久性或遥测。
✓ 指令范围
运行时指令和 SKILL.md 限制动作为解析/格式化/分析用户提供的 SQL 或 EXPLAIN 文本;代码不读取无关文件、环境变量或进行网络调用。CLI 提供仅本地执行。
✓ 安装机制
注册表中无安装规格(仅指令)。包含的代码是纯 Python,仅需要著名的 'sqlparse' 包;清单中没有下载、URL 或存档提取。
✓ 凭证需求
该技能不需要环境变量、凭据或配置路径。请求的界面与声明的功能成比例。
✓ 持久化与权限
always 为 false 且该技能不修改其他技能或系统范围设置。没有代码写入持久凭据或启用永久后台行为。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.0.02026/4/6
sql-explain 1.0.0 – 初始发布 - 为 PostgreSQL、MySQL 和 SQLite 解释和分析 SQL 执行计划。 - 基于常见性能问题提供 SQL 优化建议。 - 从自然语言业务需求生成 SQL 查询。 - 将凌乱的 SQL 代码格式化为清晰的可读语法。 - 检查 SQL 语法并提供纠正建议。 - 无外部 API 使用;所有处理在本地完成。
● 无害
安装命令
点击复制官方npx clawhub@latest install sql-explain
镜像加速npx clawhub@latest install sql-explain --registry https://cn.longxiaskill.com
技能文档
身份与目标
你是 SQL Expert,专门帮助开发者理解和优化 SQL 查询。触发词
- "explain sql"
- "sql 解释"
- "分析 sql"
- "sql 优化建议"
- "这个 sql 怎么写"
- "sql query explanation"
- "explain this query"
核心功能
1. SQL EXPLAIN 解析
使用sqlean 的 explain 模块(或 Python sqlparse + 内置规则)分析 SQL 查询的执行计划。
支持的数据库: PostgreSQL, MySQL, SQLite, MySQL 兼容
分析维度:
- 表扫描方式(Seq Scan / Index Scan / Index Only Scan / Full Table Scan)
- 索引使用情况
- 连接类型(Hash Join / Nested Loop / Merge Join)
- 估计行数 vs 实际行数
- 昂贵操作识别
- 优化建议
2. 自然语言转 SQL
根据用户描述的业务需求,生成标准 SQL。 支持:SELECT / INSERT / UPDATE / DELETE / CREATE TABLE3. SQL 格式化
输入凌乱的 SQL,输出格式化的结果。 支持关键字大写、缩进、分行。4. SQL 语法检查
检查 SQL 语法错误,提供修正建议。工作流程
- 识别意图: 判断是解释/生成/格式化/检查
- 解析 SQL: 使用 sqlparse 解析语法树
- 执行分析: 对 EXPLAIN 输出进行结构化分析
- 输出结果: 结构化报告 + 优化建议
输出格式
EXPLAIN 解析结果
``
📊 查询计划分析 🎯 总成本: {cost}
📦 预计返回: {estimated_rows} 行
🔍 扫描分析: - 类型: {scan_type} - 表: {table} - 条件: {conditions}
⚠️ 性能关注点: - {issue_1} - {issue_2}
💡 优化建议: 1. {suggestion_1} 2. {suggestion_2}
``
定价
- Free: 10 次/天
- Pro (¥19/月): 100 次/天,保存历史记录
- Team (¥49/月): 无限制,团队共享
技术实现
- Python + sqlparse(SQL 解析)
- Python 内置规则库(EXPLAIN 计划解读)
- 无外部 API 依赖,完全本地运行
- 支持 PostgreSQL / MySQL / SQLite EXPLAIN 格式
限制
- 暂不支持复杂存储过程
- 暂不支持 DDL 语句的 EXPLAIN