跳至內容
資料工具

SQL 格式化工具

立即格式化和美化您的 SQL 查詢。
選擇您的特定 SQL 方言(MySQL、PostgreSQL 等)以確保正確的語法突出顯示和縮排。
非常適合清理複雜的查詢、偵錯生成的 SQL 或準備代碼以供審查。

指南: 使用方式與特色

  • 從「Dialect」下拉式選單選擇對應的資料庫引擎(預設為 MySQL)。
  • 將 SQL 語句貼上至輸入框,系統將自動呈現格式化後的結果。
  • 點擊「Copy」按鈕即可將美化後的查詢指令複製到剪貼簿。

範例: 輸入與輸出範例

SELECT 語句格式化範例

輸入範例

select a,b,c from table1 join table2 on table1.id = table2.id where a > 10 order by b desc

輸出範例

SELECT
  a,
  b,
  c
FROM
  table1
  JOIN table2 ON table1.id = table2.id
WHERE
  a > 10
ORDER BY
  b DESC

FAQ: 常見問題

  • 支援哪些 SQL 方言?

    支援 MySQL, PostgreSQL, SQL Server, MariaDB, SQLite, Oracle 等多種主流方言。
  • 可以更改縮排寬度嗎?

    目前固定為 2 個空格縮排。我們計劃在未來的更新中加入自訂功能。
  • 輸入敏感的查詢語句安全嗎?

    非常安全。格式化處理完全在瀏覽器端執行,不會將任何資料傳送到伺服器。

使用情境: 常見的使用情境

  • 分析複雜查詢

    美化嵌套的子查詢與結合,幫助理解資料流程與結構。

  • 準備程式碼審查

    自動格式化 SQL 以確保一致性與可讀性,再貼上至 Pull Request。

  • 視覺化應用程式日誌

    將日誌中冗長的一行式查詢語句格式化,以便輕鬆找出語法錯誤或邏輯缺陷。

注意: 注意事項與限制

  • 注意語法錯誤

    若輸入的 SQL 包含語法錯誤,美化功能可能無法正常運作或產生非預期結果。

  • 特定資料庫語法限制

    某些過於特殊或實驗性的資料庫特定語法,可能無法被完全正確解析。

SQL 格式化工具

很長、壓縮過或由 ORM 產生的 SQL 通常難以閱讀。這個 SQL 格式化工具會加入換行與縮排,讓 JOIN、WHERE、GROUP BY、子查詢與排序條件更容易檢查。

適合使用的情境

  • 程式碼審查前:讓複雜 query 更容易被團隊閱讀。
  • 除錯 ORM 輸出:整理 logs 中的 SQL,確認 join 與條件。
  • 效能調校時:更清楚地檢查 filter、group 與 order 條件。

實務提醒

格式化可以提升可讀性,但不保證 query 正確或效能良好。請在目標資料庫中測試結果,並在效能敏感情境查看 execution plan。

這個工具的相關文章

最新文章

使用案例
2026-08-07

curl 選項速查|-X、-H、-d 實際做了什麼與常見陷阱

整理實務上會遇到的 curl 選項:為什麼加了 -d 就已經是 POST、-d 與 --data-raw 的差別、開頭的 @ 會悄悄讀取檔案的陷阱、單引號與雙引號的取捨,以及為什麼 -k 和 -L 值得多想一下。

工具介紹
2026-08-06

JSON Schema 與 Zod 雙向轉換的原理|required 與 .optional() 的對應

解析雙向轉換器的實作:把 JSON Schema 轉成 Zod 結構定義,也把 Zod 程式碼轉回 JSON Schema。內容涵蓋 required 與 .optional() 預設值相反的陷阱、限制條件對照表,以及不執行程式碼就完成剖析的做法。

使用案例
2026-08-06

SQL 子句執行順序參考|為什麼 WHERE 看不到 SELECT 的別名

SQL 並不是照您撰寫的順序執行。以邏輯執行順序(FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT)為主軸,說明別名為何在 WHERE 無法使用、WHERE 與 HAVING 的分工、ONLY_FULL_GROUP_BY、COUNT(*) 與 COUNT(欄位) 的差異,以及 LEFT JOIN 搭配 WHERE 的陷阱。

使用案例
2026-08-06

unified diff 格式閱讀指南|看懂 git diff 的 @@ 標頭

說明如何閱讀 git 產生的 unified diff 格式:@@ -12,7 +12,9 @@ 四個數字的意義、只改一個字元為何顯示成整行替換、空白與換行字元的陷阱、\ No newline at end of file、合併提交的 @@@ 組合式 diff,以及以 similarity index 推斷檔案更名。

使用案例
2026-08-06

UTC⇄JST 換算參考手冊|9小時時差對照表與時區踩雷指南

以對照表整理 UTC 與日本時間(JST)的換算,並說明與台灣時間(UTC+8)相差 1 小時的關係。內容涵蓋 ISO 8601 的 Z 與 +09:00、JavaScript 日期解析悄悄位移 9 小時的條件、MySQL/PostgreSQL 的時區行為,以及 GitHub Actions cron 一律以 UTC 執行的陷阱。

使用案例
2026-08-04

CREATE TABLE 參考手冊|MySQL、PostgreSQL、SQLite 的型別與約束差異

以跨資料庫對照表整理 CREATE TABLE(DDL)的寫法:型別對應表、自動編號(AUTO_INCREMENT / IDENTITY / rowid)的方言差異、外鍵的 ON DELETE 行為,以及 MySQL 會靜默忽略的 CHECK 約束。

廣告

廣告