Format SQL Online
Format kueri SQL dengan indentasi yang tepat dan kata kunci huruf kapital.
.pdf · hingga 2 GB
Mengapa menggunakannya
SQL mudah dibaca, tim lebih produktif
Indentasi otomatis
Setiap klausul pada barisnya sendiri, subkueri dengan nesting tambahan. Keterbacaan langsung.
Privat
SQL diproses di browser Anda. Tidak pernah dikirim ke server mana pun.
Multi-dialek
MySQL, PostgreSQL, SQL Server, SQLite dan lainnya. Pemformatan spesifik per dialek.
Instan
Hasil dalam milidetik. Tanpa menunggu, tanpa pendaftaran.
Cara kerjanya
Tiga langkah, tanpa kerumitan
Tempelkan kueri SQL Anda
Tempelkan SQL langsung ke editor. Mendukung SELECT, INSERT, UPDATE, DELETE, CREATE, dan subkueri.
Pilih dialek SQL
Pilih MySQL, PostgreSQL, SQL Server, SQLite, atau dialek lain untuk pemformatan yang presisi.
Salin SQL yang sudah diformat
SQL ditampilkan dengan indentasi yang benar dan kata kunci huruf kapital. Salin dengan satu klik.
FAQ
Ada pertanyaan?
Pemformatan SQL menyusun ulang kueri dengan menambahkan indentasi yang konsisten, mengubah kata kunci menjadi huruf kapital (SELECT, FROM, WHERE, JOIN), menambahkan jeda baris antar klausul, dan menyelaraskan kolom. Hasilnya identik secara fungsional dengan aslinya namun jauh lebih mudah dibaca, sehingga lebih mudah untuk meninjau, men-debug, dan memelihara kueri yang kompleks.
Ya. Kueri SELECT diformat dengan menempatkan setiap klausul pada barisnya sendiri (SELECT, FROM, WHERE, GROUP BY, ORDER BY) dan mengindentasi kolom. Kueri INSERT menampilkan field dan nilai yang sejajar. Pernyataan UPDATE memisahkan setiap SET ke barisnya sendiri. Subkueri mendapat satu level indentasi tambahan untuk menunjukkan hierarkinya dalam kueri utama.
Konvensi penulisan kata kunci SQL dengan huruf kapital (SELECT, FROM, WHERE) berasal dari IBM pada tahun 1970-an dengan bahasa SEQUEL, pendahulu SQL. Pada terminal era tersebut, huruf kapital secara visual meningkatkan keterbacaan dengan membedakan perintah bahasa dari nama tabel dan kolom. Meskipun mesin SQL modern tidak membedakan huruf besar-kecil untuk kata kunci, konvensi ini tetap dipertahankan dalam panduan gaya SQL dari Google, Airbnb, dan sebagian besar tim data.
Subkueri diindentasi satu level tambahan relatif terhadap kueri yang memuatnya. Subkueri dalam klausul WHERE menerima 4 atau 8 spasi indentasi tergantung pada gaya yang dipilih. Subkueri berkorelasi (yang merujuk kolom dari kueri luar) ditandai secara visual dengan komentar di beberapa formatter. CTE (Common Table Expressions) yang menggunakan WITH didaftarkan satu per baris sebelum kueri utama.
Ya. Beberapa ORM dan sistem cache kueri mendapat manfaat dari SQL yang diminifikasi (tanpa spasi atau jeda baris yang tidak perlu) untuk membandingkan kueri berdasarkan hash atau mengurangi lalu lintas dalam protokol basis data. SQL yang diminifikasi juga mempermudah penyertaan kueri dalam string kode tanpa karakter escape. Minifikasi SQL menghapus komentar, memadatkan beberapa spasi menjadi satu, dan menghilangkan jeda baris sambil mempertahankan semantik yang tepat.
Sejarah SQL dan seni pemformatan kueri
SQL dirancang oleh E.F. Codd pada tahun 1970 di IBM sebagai bahasa untuk model relasional. Sistem pertama yang mengimplementasikan SQL adalah IBM System R (1974-1979), di mana bahasa ini disebut SEQUEL (Structured English Query Language). Nama tersebut diubah menjadi SQL karena alasan merek dagang. Pada tahun 1986, standar SQL-86 diterbitkan oleh ANSI, diikuti oleh SQL-89, SQL-92 (yang menambahkan JOIN eksplisit), SQL:1999 (fungsi jendela, ekspresi reguler), SQL:2003 (CTE, MERGE), dan standar terbaru SQL:2023.
Optimasi kueri dan keterbacaan SQL saling berkaitan erat. Rencana kueri yang dihasilkan oleh mesin basis data bergantung pada cara kueri ditulis: JOIN yang diindentasi dengan baik segera menunjukkan apakah kondisi join hilang (yang menghasilkan produk Kartesian yang mahal). Panduan gaya SQL dari perusahaan seperti GitLab, Kickstarter, dan Yelp menetapkan bahwa pemformatan yang konsisten wajib diterapkan dalam tinjauan kode, karena kueri yang tidak diformat dengan baik dalam migrasi telah menyebabkan pemadaman produksi akibat kesalahan yang sulit terdeteksi secara visual.
Ekosistem alat pemformatan SQL mencakup sql-formatter (npm, oleh Nikita Galaiko), pgFormatter (Perl, khusus PostgreSQL), SQLFluff (Python, dengan dukungan dbt dan Jinja), serta plugin untuk IDE seperti DataGrip dan DBeaver. SQL:2023 memperkenalkan dukungan data JSON asli (JSON_TABLE, IS JSON) dan graf properti (SQL/PGQ), memperluas kasus penggunaan melampaui kueri relasional tradisional dan meningkatkan kompleksitas yang membuat pemformatan otomatis menjadi sangat diperlukan.