Alignment插件不支持SQL关键字自动对齐,仅按配置的分隔符(如=、:)对齐赋值语句或JSON键值;SQL字段列对齐需先正则预处理再手动多光标调整,SQLBeautifier仅做结构美化而非列对齐。

Alignment 插件不支持 SQL 关键字自动对齐
Sublime Text 原生和 Alignment 插件都不按 SELECT、FROM、WHERE 等关键字对齐 SQL。Alignment 只识别你配置的分隔符(如 =、:),对 SQL 的关键词缩进或字段列对齐无效。它适合对齐赋值语句(name = "xxx")或 JSON 键值,但不能把 SELECT a, b, c FROM table WHERE x = y 拆成左对齐的列式布局。
SQL 字段列对齐靠手动 + 正则预处理
真正能实现字段列对齐(比如让所有逗号后空格数一致、字段名垂直对齐)必须分两步:先用正则统一格式,再用多光标微调。常见错误是直接选中整段 SQL 按 Ctrl+Alt+A,结果毫无反应——因为没匹配到 = 或 :。
- 先确保字段间用逗号分隔且每行一个字段(例如把
SELECT id, name, created_at拆成三行) - 用
Ctrl+Shift+L为每行末尾添加光标 - 手动补空格或 Tab,使所有逗号对齐(注意:Tab 和空格混用会导致错位)
- 如果字段含别名(
user_id AS uid),需先统一写法,否则对齐后视觉混乱
SQLBeautifier 格式化 ≠ 列对齐,但它能帮你打基础
SQLBeautifier 插件做的不是列对齐,而是结构美化:它会把 SELECT 单独一行、每个字段换行、JOIN 块缩进、ON 条件对齐。这虽不是“列对齐”,但为后续手动调整提供了干净结构。
- 安装后选中 SQL,按
Ctrl+Shift+P→ 输入SQLBeautifier→ 选Beautify SQL - 关键设置项:
"keyword_case": "upper"(强制大写关键字)、"comma_style": "after"(逗号放行尾) - 它不会动字段内间距,所以
u.id和o.order_no长度不一时,仍需人工加空格对齐
复杂查询里对齐容易掩盖逻辑错误
字段列对齐看着整齐,但容易让人忽略真实问题:比如 SELECT u.name, o.status FROM users u JOIN orders o ON u.id = o.user_id 对齐后可能掩盖了 o.status 实际来自未过滤的订单表,而业务本意要的是“最近一笔订单状态”。对齐只是表层操作,别让它分散你检查 JOIN 条件、WHERE 范围和子查询层级的注意力。

















