跳到主要內容

SQL 格式化

把擠成一行的 SQL 排版成清楚的縮排,支援 MySQL、PostgreSQL、SQLite 等,關鍵字可自動大寫。

什麼是 SQL 格式化工具?

從程式碼、log 或 ORM 印出來的 SQL 常常擠成又長又難讀的一行。這個 SQL 格式化工具把它排版成有縮排、有換行的清楚結構:SELECTFROMWHEREJOIN 各自成段,一眼就看懂查詢在做什麼。支援 MySQL、PostgreSQL、SQLite 等方言,全程在你的瀏覽器本機完成。

如何使用

  1. 把 SQL 貼進輸入框。
  2. 選擇資料庫方言與關鍵字大小寫。
  3. 按「格式化」,複製排好的結果貼回你的程式或工具。

使用情境

  • 把 ORM 或框架印出的長查詢排版來除錯。
  • 統一團隊的 SQL 風格(縮排、關鍵字大寫)。
  • 需要處理 JSON 或其他資料?用 JSON 格式化JSON ⇄ CSV

為什麼選對「方言」會影響排版結果?

SQL 有一套 ANSI 標準,但每家資料庫都加了自己的語法糖,所以格式化工具需要知道你用的是哪一種「方言」才能排得準。最典型的例子是識別字引號:MySQL 用反引號 `col`,PostgreSQL 和標準 SQL 用雙引號 "col";還有 LIMIT(MySQL/SQLite)vs TOP(SQL Server)、PostgreSQL 專屬的 :: 型別轉換、BigQuery 的反引號資料表名等等。選錯方言,工具可能把這些當成一般字串或運算子,縮排就會怪怪的。所以貼進來前,先在「資料庫」下拉選你實際用的那套。還有一個常見誤解要澄清:格式化不是驗證,也不會執行你的查詢——它只調整空白與縮排,不會告訴你資料表存不存在、語法在真實資料庫跑不跑得動。要清資料本身,JSON 用 JSON 格式化,表格用 JSON ⇄ CSV

常見問題

支援哪些資料庫?

支援 Standard SQL 以及 MySQL、PostgreSQL、SQLite、MariaDB、BigQuery 等常見方言。不同方言的關鍵字與語法略有差異,選對方言排版會更準。

會改變我的查詢邏輯嗎?

不會。格式化只調整空白、換行與縮排(以及選擇性的關鍵字大小寫),不會更動資料表、欄位或條件,查詢結果完全一樣。

關鍵字大小寫可以自動統一嗎?

可以。你可以選擇「保持原樣」、全部轉大寫(SELECT、FROM)或全部小寫,讓團隊的 SQL 風格一致。

資料會上傳嗎?

不會。格式化在你的瀏覽器本機完成,SQL 不會離開你的裝置。

延伸閱讀

為什麼要格式化 SQL(以及格式化工具到底做了什麼) →

嵌入此工具

把這個工具免費放進你的網站或部落格 —— 複製下面的程式碼貼上即可(內含一條回到本站的連結)。