01
1. 為什麼要格式化 SQL
當 JOIN 越來越多時,單行 SQL 或 ORM 產生的 SQL 會變得難以閱讀。將它依子句切分為 SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY 等,並維持一致縮排,就能立刻看出哪些資料表以什麼條件連接,以及 WHERE 在篩選什麼,讓程式碼審查與除錯更有效率。
將通用SQL依子句換行並縮排。支援的SQL可以壓縮成一行;壓縮時會刪除註解。關鍵字是否轉為大寫可自行選擇。
此工具會格式化SQL,但不會驗證SQL、確認資料庫特定的相容性或核實查詢含義。
SQL僅在此裝置上處理。
結果過長,只顯示開頭部分。複製即可取得完整結果。
當 JOIN 越來越多時,單行 SQL 或 ORM 產生的 SQL 會變得難以閱讀。將它依子句切分為 SELECT、FROM、WHERE、JOIN、GROUP BY、ORDER BY 等,並維持一致縮排,就能立刻看出哪些資料表以什麼條件連接,以及 WHERE 在篩選什麼,讓程式碼審查與除錯更有效率。
格式化器會在SELECT、FROM、WHERE和JOIN等子句前換行,並將AND和OR縮排一層,以區分不同條件。以逗號分隔的清單會分別放在獨立的行上,括號內的內容會再增加一層縮排。它是以標記為基礎的格式化器,不是SQL驗證器,也不是能解析所有方言的剖析器。對於具名參數或廠商專用常值等無法安全保留的語法,它會顯示錯誤。如果出現這種情況,請不要修改查詢,而是使用支援該語法的SQL工具處理原始查詢。
壓縮會移除註解,並將不必要的空白與換行收斂成單行。適合用來記錄查詢、縮小預存程序或遷移腳本的大小,或把單行 SQL 貼到其他工具中。字串字面值中的內容(加引號的值)會完整保留,因此你的資料值不會被更動。