从 SELECT 查询生成 ER 图(JOIN 分析工具)
发布: (2026年3月23日 GMT+8 13:36)
3 分钟阅读
原文: Dev.to
Source: Dev.to
介绍
- JOIN 过多,难以理解结构
- 难以直观地看到表之间的关系
- 没有 ER 图可用
我也遇到了同样的问题,于是构建了一个可以直接从 SELECT 查询生成 ER 图的工具。
👉 试用地址: SQL2ER – trancelens.com
该工具的功能
工具会分析 JOIN 条件(例如 u.id = o.user_id),并将其转换为表之间的关系,生成无需任何 DDL 的 ER 图。
示例
SELECT
u.name,
o.id,
p.name
FROM users u
JOIN orders o ON u.id = o.user_id
JOIN order_items oi ON o.id = oi.order_id
JOIN products p ON oi.product_id = p.id;工具会解析这些 JOIN 条件,并可视化 users、orders、order_items 与 products 之间的连接。
为什么这很有用
- 在实际场景中,你往往只有 SELECT 查询。
- 可能在分析遗留系统。
- 需要快速了解表之间的关系。
👉 该工具无需任何 DDL 即可使用。
关键特性
- 无需安装(在浏览器中运行)。
- 支持普通的 SELECT 查询。
- 支持多个 JOIN。
- 处理表别名。
工作原理
- 输入: 一条 SELECT 查询。
- 解析: 工具提取
table1.column = table2.column的 JOIN 条件。 - 输出: 构建表之间的连接并渲染 ER 图。
使用场景
- 理解遗留系统。
- SQL 代码审查。
- 学习数据库关系。
- 调试复杂查询。
亲自尝试
访问网站,粘贴你的 SQL,即可瞬间看到结构。
最后感想
从 SELECT 查询生成 ER 图在实际工作中出乎意料地有用。如果你经常使用 SQL,这个工具可以为你节省大量时间。
反馈
欢迎留下你的反馈。