SQL Formatter & Beautifier

Tempel query yang berantakan dan dapatkan SQL yang rapi dengan indentasi konsisten. Mendukung 17 dialek, pengaturan kapital keyword, dan minifier sekali klik, semuanya di browser Anda.

Berjalan di browser AndaTanpa daftarTidak ada yang diunggah

SQL terformat

Cara menggunakan SQL Formatter

  1. Tempel satu atau beberapa statement SQL ke kotak input, atau buka file .sql.
  2. Pilih dialek database Anda agar sintaksnya, seperti cast ::, [brackets], backtick, atau string $$, di-parse dengan benar.
  3. Atur kapital keyword (UPPER, lower, atau pertahankan), indentasi, dan jumlah baris kosong antar statement.
  4. Beralih ke Minify untuk menghapus komentar dan spasi demi log, ORM, atau parameter URL.
  5. Salin hasilnya atau unduh sebagai file .sql.

Mengapa perlu memformat SQL?

Query yang disalin dari log ORM, query plan, atau kode aplikasi biasanya berupa satu baris panjang. Menaruh setiap klausa (SELECT, FROM, JOIN, WHERE, GROUP BY) di barisnya sendiri dan mengindentasi kolom serta kondisi membuat logikanya mudah dibaca. Ini juga memperkecil diff saat code review dan membantu Anda menemukan kondisi join yang hilang atau OR yang salah tempat.

Konvensi gaya SQL

  • Keyword huruf besar (SELECT, WHERE) memisahkan sintaks SQL dari nama tabel dan kolom. Sebagian besar style guide merekomendasikannya, meskipun huruf kecil populer di tim dbt dan analitik.
  • Satu kolom per baris membuat penambahan atau penghapusan kolom hanya menjadi diff satu baris.
  • Indentasi konsisten (2 atau 4 spasi) di dalam klausa dan subquery menunjukkan struktur bersarang secara sekilas.
  • Pengakhir statement: akhiri setiap statement dengan ; agar skrip multi-statement tidak ambigu.

Dialek SQL yang didukung

Standard SQL, PostgreSQL, MySQL, MariaDB, SQLite, Microsoft SQL Server (T-SQL), Oracle PL/SQL, Google BigQuery, Snowflake, Amazon Redshift, Spark SQL, Trino/Presto, Hive, IBM Db2, Couchbase N1QL, SingleStore, dan TiDB. Jika query gagal di-parse, coba dialek yang lebih spesifik: @variables, parameter $1, dan operator khusus vendor hanya dikenali di dialeknya sendiri.

Apa yang dilakukan minifier

Mode minify menghapus komentar --, # dan /* */, meringkas spasi dan baris baru menjadi satu spasi, serta membuang spasi di sekitar koma dan tanda kurung. String literal dan identifier berkutip ('…', "…", `…`, […], $$…$$) disalin byte demi byte, sehingga makna query tidak pernah berubah.

Pertanyaan yang sering diajukan

Apakah SQL saya dikirim ke server?
Tidak. Pemformatan memakai library open source sql-formatter yang berjalan di browser Anda. Query yang berisi nama tabel, data pelanggan, atau kredensial tetap di mesin Anda.
Apakah pemformatan mengubah fungsi query?
Tidak. Hanya spasi, baris baru, dan (jika Anda pilih) kapital keyword yang berubah. Identifier, string literal, dan komentar tetap seperti aslinya.
Mengapa muncul parse error pada SQL yang valid?
Query kemungkinan memakai sintaks khusus database lain. Pilih dialek yang sesuai, misalnya PostgreSQL untuk cast ::type atau SQL Server untuk nama [bracketed] dan @params.
Bisakah saya memformat beberapa statement sekaligus?
Ya. Pisahkan statement dengan titik koma. Anda bisa memilih berapa baris kosong di antara statement pada output.
Apakah pengaturan kapital keyword mengubah nama kolom saya?
Tidak. Hanya keyword yang dicadangkan, tipe data, dan fungsi bawaan yang diubah kapitalnya. Nama tabel dan kolom tetap dengan ejaan aslinya.

Tools terkait