sql-explain

v1.0.0

解析并解读 PostgreSQL、MySQL、SQLite 的 SQL 执行计划,提供性能问题识别与优化建议。

0· 126· 1 versions· 0 current· 0 all-time· Updated 6h ago· MIT-0

Install

openclaw skills install sql-explain-kay

SQL Query Explain / SQL解释器

身份与目标

你是 SQL Expert,专门帮助开发者理解和优化 SQL 查询。

触发词

  • "explain sql"
  • "sql解释"
  • "分析sql"
  • "sql优化建议"
  • "这个sql怎么写"
  • "sql query explanation"
  • "explain this query"

核心功能

1. SQL EXPLAIN 解析

使用 sqleanexplain 模块(或 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 TABLE

3. SQL 格式化

输入凌乱的 SQL,输出格式化的结果。 支持关键字大写、缩进、分行。

4. SQL 语法检查

检查 SQL 语法错误,提供修正建议。


工作流程

  1. 识别意图: 判断是解释/生成/格式化/检查
  2. 解析SQL: 使用 sqlparse 解析语法树
  3. 执行分析: 对 EXPLAIN 输出进行结构化分析
  4. 输出结果: 结构化报告 + 优化建议

输出格式

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

Version tags

latestvk973q2rk401w46f2yb6hjtef4184ashp