Token导航 LogoToken导航TokenDH.com
效率只读clawhub未标认证来源可访问clear审计通过

sql-masterSQL master 效率

Agent Skill

用于辅助数据库表结构、查询语句、迁移脚本和数据维护任务。它适合让 Agent 分析 schema、编写 SQL、排查查询问题、整理索引或生成迁移建议。使用时需要明确数据库类型、连接环境和目标表,区分只读分析与写入变更;涉及删除、更新、迁移和批量导入时,应优先 dry-run、备份或事务保护,避免误操作。

总安装

8,421

周安装

344

GitHub Stars

4

下载量

2,697
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:sql-master(SQL master 效率)
来源仓库:https://github.com/sqlskills/sql-master
安装命令:
openclaw skills install sql-master
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install sql-master

简介

覆盖 SQL 全链路能力的智能查询助手。sql-master 属于效率类 Skill,可作为该场景下的辅助能力补充。

  • 支持自然语言转生产级 SQL 和多数据库方言。
  • 提供慢查询诊断、执行计划分析和索引优化建议。
  • 集成数仓建模、原理科普和结果可视化功能。适用宿主包括 OpenClaw,接入前应确认版本、权限和运行环境要求。
  • 适用于复杂数据查询和数据库架构设计场景。

SKILL.md

name
sql-master
description
SQL 查询、数据获取智能体。覆盖 SQL 全链路能力:自然语言转生产级 SQL、慢查询诊断与执行计划分析、索引设计与优化、数仓建模、SQL 原理深度科普、查询结果可视化。支持 MySQL / PostgreSQL / Hive / Spark SQL / ClickHouse / BigQuery 多方言。触发场景:(1) 写 SQL / 生成查询,(2) SQL 慢/优化/调优,(3) 执行计划分析 EXPLAIN,(4) 索引设计,(5) 数仓建模 / 分层设计,(6) SQL 原理问题(事务/锁/MVCC/Join算法等),(7) 表结构设计 DDL,(8) SQL 报错诊断,(9) 任何"帮我写个查询"、"这个SQL为什么慢"、"怎么建索引"类请求,(10) 查询结果可视化 / 出图 / 图表 / 数据展示。

SQL Master — SQL 查询、数据获取智能体

⚠️ 使用前必读

本 Skill 需要 Python 依赖。首次使用前必须安装依赖

skillhub_install install_skill sql-master

工具会自动检测 Python3 环境、pip 可用性,并安装所有依赖。

依赖安装方式

方式命令适用场景
自动安装(推荐)skillhub_install install_skill sql-master一键安装,自动处理
手动安装pip install -r requirements.txt熟悉 Python 环境的用户

无依赖使用(受限模式)

如果无法安装依赖,本 Skill 提供以下降级能力

可用功能

  • SQL 语句生成(纯文本输出,无需执行)
  • SQL 诊断与优化建议(基于文本分析)
  • 索引设计建议(基于规则引擎)
  • SQL 原理解释与科普
  • 执行计划分析(用户提供 EXPLAIN 结果)

不可用功能

  • 数据库连接与 SQL 执行
  • 数据 Pipeline 处理
  • 本地文件数据获取(CSV/Excel 等)
  • 与 sql-dataviz / sql-report-generator 联动

🔗 Skill 协作关系

本 Skill 与 sql-datavizsql-report-generator 组成完整的数据分析流水线:

┌─────────────┐     ┌──────────────┐     ┌────────────────────────┐
│ sql-master  │ ──► │ sql-dataviz  │ ──► │ sql-report-generator   │
│  (数据层)   │     │  (可视化层)  │     │  (报告层)              │
└─────────────┘     └──────────────┘     └────────────────────────┘
      │                   │                   │
      ▼                   ▼                   ▼
   SQL 查询           图表生成            HTML 报告
   数据获取           PNG/HTML            AI 洞察
   格式转换           Dashboard           数据表格

协作模式

模式组合适用场景
单独使用sql-master仅需 SQL 查询/生成/优化
可视化sql-master + sql-datavizSQL 查询 → 图表输出
完整流程sql-master + sql-dataviz + sql-report-generator完整数据分析报告

🥇 最优使用方式:三 Skill 串联

from scripts.unified_pipeline import UnifiedPipeline

result = (
    UnifiedPipeline("销售分析")
    .from_file("sales.csv")                                    # sql-master: 数据获取
    .query("SELECT region, SUM(sales) as total FROM data GROUP BY region")
    .interactive_chart("bar", x_col="region", y_col="total")   # sql-dataviz: 可视化
    .insights(value_cols=["total"])                            # AI 洞察
    .report(title="销售报告", output="report.html")            # sql-report-generator: 报告
)

决策指南

你需要什么?
├─ 仅 SQL 查询/优化 → sql-master 单独使用
├─ SQL + 图表 → sql-master + sql-dataviz
├─ 图表 + 报告(无 SQL)→ sql-dataviz + sql-report-generator
└─ 完整分析报告 → sql-master + sql-dataviz + sql-report-generator ✅ 推荐

新增功能:统一 Pipeline 编排(三 Skill 端到端)

scripts/unified_pipeline.py

打通 sql-master → sql-dataviz → sql-report-generator 的端到端自动化:

from scripts.unified_pipeline import UnifiedPipeline, analyze_file

# 完整 Pipeline
result = (
    UnifiedPipeline("销售分析")
    .from_file("sales.csv")                        # 数据源
    .query("SELECT region, SUM(sales) as total FROM data GROUP BY region")  # SQL
    .interactive_chart("bar", x_col="region", y_col="total", title="区域销售")  # 交互图
    .chart("line", x_col="region", y_col="total")              # 静态图 (PNG)
    .insights(value_cols=["total"])                            # AI 洞察
    .report(title="销售报告", output="report.html")           # 完整报告
)
print(result.log())

# 一键分析
result = analyze_file("sales.csv", output="report.html")

支持的图表:静态 PNG(60种)+ 交互式 HTML(12种) 支持的洞察:异常检测 / 趋势 / 相关性 / TOP N / 分布 / 季节性 / 对比 支持的报告:完整 HTML(图表 + 洞察 + 数据表格 + KPI 卡片)

新增功能:数据库连接执行层 + 数据 Pipeline

1. 数据库连接(scripts/database_connector.py)

支持 SQLite / MySQL / PostgreSQL / SQL Server / ClickHouse / Oracle

from scripts.database_connector import connect_sqlite, connect_mysql, connect_postgresql

# SQLite(本地文件)
conn = connect_sqlite("data/sales.db")
result = conn.execute("SELECT region, SUM(amount) FROM sales GROUP BY region")
print(result.df)           # DataFrame 访问
print(result.to_dict())   # dict 访问
result.to_csv("output.csv")  # 导出 CSV
result.to_json("output.json") # 导出 JSON

# MySQL
conn = connect_mysql(host="localhost", port=3306, username="root", password="xxx", database="mydb")
result = conn.execute("SELECT * FROM orders WHERE date >= '2024-01-01'")
print(result.summary())   # 可读摘要

# PostgreSQL
conn = connect_postgresql(host="localhost", database="mydb", username="postgres", password="xxx")
tables = conn.get_tables()  # 获取所有表名
schema = conn.get_schema("orders")  # 获取表结构
conn.close()

2. 本地文件数据获取(scripts/file_connector.py)

支持 CSV / Excel / JSON / Parquet / SQLite 等所有主流格式,自动 SQL 查询 + 格式转换

from scripts.file_connector import load_file, load_directory

# 加载本地文件
fc = load_file("data/sales.csv")        # 单个文件
fc = load_directory("data/reports/")     # 目录下所有文件
fc = load_file("data/*.csv")            # 通配符匹配

print(fc.shape)           # (10000, 12)
print(fc.columns)         # ['date', 'region', 'amount', ...]
print(fc.df.head())       # DataFrame

# 用途一:SQL 查询(自动建 SQLite 内存表)
result = fc.query("SELECT region, SUM(amount) as total FROM data GROUP BY region ORDER BY total DESC")

# 用途二:格式转换
fc.to_csv("output/sales_report.csv")
fc.to_excel("output/sales_report.xlsx")
fc.to_json("output/sales_report.json")
fc.to_parquet("output/sales_report.parquet")
fc.to_sqlite("output/sales.db", table_name="sales")

# 用途三:传给 sql-dataviz 画图
b64 = fc.to_dataviz("line", x_col="month", y_col="sales", title="月度销售趋势")

3. SQL Pipeline 流水线(scripts/pipeline.py)

三大用途一气呵成:数据获取 → SQL 查询 → 格式转换 → 可视化 → HTML 报告

from scripts.pipeline import SQLPipeline

# 方式一:从文件开始
p = (
    SQLPipeline()
    .from_file("data/sales.csv")
    .query("SELECT region, SUM(amount) as total FROM data GROUP BY region")
    .to_csv("output/regional_sales.csv")
    .to_excel("output/regional_sales.xlsx")
)

# 方式二:从数据库开始
p = SQLPipeline().from_db(dialect="sqlite", database="data.db")
p.query("SELECT * FROM sales WHERE amount > 1000")
p.query("SELECT region, COUNT(*) FROM data GROUP BY region")

# 方式三:从 DataFrame 开始
import pandas as pd
df = pd.read_csv("data.csv")
p = SQLPipeline().from_dataframe(df)

# 管道操作
p.query("SELECT region, SUM(amount) as total FROM data GROUP BY region")
p.transform(lambda df: df[df["total"] > 1000])  # 过滤
p.to_dataviz("bar", x_col="region", y_col="total", title="区域销售排行")
p.to_report(title="销售分析报告", output="output/report.html")
p.log()   # 打印执行日志

Pipeline 完整流程示例:

(
    SQLPipeline()
    .from_file("sales_2024.csv")                        # 加载数据
    .query("SELECT * FROM data WHERE region = '华东'")  # SQL 筛选
    .to_csv("output/east_sales.csv")                   # 导出 CSV
    .to_json("output/east_sales.json")                 # 导出 JSON
    .to_dataviz("line", x_col="month", y_col="sales") # 生成折线图
    .to_dataviz("pie", x_col="product", y_col="amount") # 生成饼图
    .to_report(title="华东区域销售报告", output="output/report.html")  # HTML 报告
)

核心原则

生产级标准:所有输出的 SQL 必须满足:

  • 注释完整(业务背景 + 性能预期 + 适用数据量级)
  • 明确标注数据库版本和方言
  • 主动提示 NULL 处理、空集合、边界条件
  • 给出多方案时说明各自 trade-off

分层回答:同一问题,先给结论,再给原理,最后给深入扩展。自动识别用户水平(初学者/开发者/DBA),调整解释深度。

可复现:生成的 SQL 必须附带最小可复现测试数据(DDL + INSERT),确保用户能直接验证。


功能模块导航

场景参考文件
自然语言 → SQL 生成references/sql-generation.md
慢查询诊断 & 执行计划分析references/query-optimization.md
索引设计策略references/index-design.md
数仓建模 & 分层架构references/data-warehouse.md
Hive 数据倾斜深度(引擎原理/量化模型/极端场景)references/hive-skew-advanced.md
SQL 原理深度(事务/锁/MVCC/Join)references/sql-internals.md
多方言差异速查references/dialect-guide.md
DDL 设计规范references/ddl-design.md
SQL 安全规范(注入防护/参数化查询)references/sql-security.md
CLI 实操速查(sqlite3/psql/mysql 连接与导入导出)references/cli-quickref.md
查询结果可视化(图表选型/Python 代码/设计原则)references/visualization-guide.md

工作流程

1. 意图识别

收到请求后,先判断属于哪个场景:

  • 生成类:用户描述业务需求,需要输出 SQL
  • 优化类:用户提供现有 SQL 或 EXPLAIN,需要诊断和改写
  • 设计类:表结构、索引、数仓架构设计
  • 科普类:原理解释、概念问答
  • 诊断类:报错信息分析
  • 可视化类:将查询结果转化为图表 → 加载 references/visualization-guide.md

2. 上下文收集

生成或优化 SQL 前,主动确认(如未提供):

  • 数据库类型和版本
  • 关键表的 schema(列名、类型、索引)
  • 数据量级(行数、数据大小)
  • 查询频率和性能目标(P99 < Xms?)

3. 输出规范

SQL 输出模板

-- ============================================================
-- 业务说明:[描述这段 SQL 解决什么业务问题]
-- 数据库:MySQL 8.0 / PostgreSQL 15 / ...
-- 性能预期:[预计执行时间,适用数据量级]
-- 注意事项:[NULL 处理、边界条件、已知限制]
-- ============================================================

SELECT ...
FROM ...
WHERE ...

优化报告模板

## 问题诊断
[执行计划中发现的问题,按严重程度排序]

## 优化方案
### 方案 A(推荐)
[改写后的 SQL + 原因]

### 方案 B(备选)
[另一种思路 + 适用场景]

## 预期收益
[优化前 vs 优化后的性能对比估算]

## 可复现测试
[最小 DDL + 数据 + 验证步骤]

4. 加载参考文件

根据意图识别结果,读取对应的 references/ 文件获取详细指导。


快速参考

常见性能陷阱(立即识别)

  • SELECT * → 明确列名,避免回表
  • WHERE 列上有函数 → 索引失效
  • OR 连接不同列 → 考虑 UNION ALL
  • != / NOT IN → 无法走索引
  • 隐式类型转换 → 索引失效
  • LIMIT 大偏移量 → 延迟关联优化
  • COUNT(*) vs COUNT(col) → NULL 语义差异

Join 算法选择直觉

  • 小表 JOIN 大表 → Nested Loop(小表驱动)
  • 两个大表等值 JOIN → Hash Join
  • 有序数据等值 JOIN → Merge Join
  • 数据倾斜 → 广播小表 / 加盐打散

索引设计口诀

最左前缀、区分度高、覆盖查询、避免冗余


强制规范(MUST DO / MUST NOT)

借鉴 sql-pro 的约束清单,以下规则在任何情况下都必须遵守:

✅ MUST DO

  • 优化前必须先分析执行计划(EXPLAIN / EXPLAIN ANALYZE)
  • 优先使用集合操作,避免逐行处理(游标/循环)
  • 尽早过滤:WHERE 条件尽量前置,减少中间结果集
  • 存在性检查用 EXISTS,不用 COUNT(*) > 0
  • 显式处理 NULL:IS NULL / IS NOT NULL / COALESCE / NULLIF
  • 为高频查询创建覆盖索引
  • 涉及安全场景时,必须使用参数化查询,详见 references/sql-security.md
  • 跨数据库迁移时,必须标注方言差异,详见 references/dialect-guide.md

❌ MUST NOT

  • 不在 WHERE / JOIN 条件列上使用函数(导致索引失效)
  • 不用 SELECT *(回表开销 + 隐式依赖)
  • 不用字符串拼接构造 SQL(SQL 注入风险)
  • 不在大表上做无索引的全表扫描
  • 不用 OFFSET 大偏移量分页(改用游标/keyset 分页)
  • 不忽略隐式类型转换(导致索引失效 + 数据截断)
  • 不在生产环境直接运行未经 EXPLAIN 验证的复杂查询

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

76.15%
按下载量换算2,054

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills