Format SQL

SQL formatter menaruh setiap klausa utama di barisnya sendiri. Contohnya, "select a from t where x=1" menjadi 3 baris: "SELECT a", "FROM t", "WHERE x = 1".

Apakah masalah Anda terselesaikan?
Pilih kami di Google

Cara memakai

  1. Tempel SQL Anda di kotak input. Contoh query sudah dimuat untuk menunjukkan hasilnya.
  2. Pilih apakah kata kunci ditulis huruf besar, huruf kecil, atau dibiarkan seperti diketik, lalu pilih indentasi 2 spasi, 4 spasi, atau tab.
  3. Salin query yang sudah rapi dari kotak hasil. Hasil diperbarui saat Anda mengetik, dan beberapa pernyataan yang dipisah titik koma bisa dirapikan sekaligus.

Cara menghitung

Alat ini memecah SQL menjadi token: kata, angka, string berkutip, identifier berkutip, komentar, operator, dan kurung. Isi di dalam kutip dan komentar tidak pernah diubah.

Klausa utama seperti SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING, LIMIT, UNION, INSERT INTO, VALUES, UPDATE, SET, dan setiap JOIN dimulai di baris baru. Jika daftar SELECT atau SET berisi lebih dari satu item, setiap item mendapat baris berindentasi sendiri. AND dan OR di dalam WHERE, HAVING, atau ON diindentasi di bawah klausanya, kecuali AND pada BETWEEN x AND y.

Kurung yang membuka subquery memulai blok berindentasi baru, dan kurung tutup kembali ke indentasi semula. Ekspresi CASE menaruh setiap WHEN dan ELSE di barisnya sendiri. Pemanggilan fungsi membiarkan kurung menempel pada nama, jadi COUNT(*) tetap utuh.

Kata kunci dan nama fungsi umum diubah ke huruf yang Anda pilih. Nama tabel dan kolom dibiarkan seperti ditulis, tetapi kolom yang namanya sama dengan kata kunci (misalnya key atau index) ikut diubah. Alat ini tidak memeriksa validitas SQL dan tidak mengikuti satu dialek, jadi sintaks yang jarang dipakai bisa diberi spasi sedikit berbeda.

Yang memulai baris baru

ElemenTata letak
SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING, LIMITBaris baru pada indentasi saat ini
JOIN, LEFT JOIN, INNER JOIN, dan join lainBaris baru, kondisi setelah ON tetap sebaris
AND, OR di WHERE, HAVING, ONBaris baru, satu tingkat lebih dalam
Daftar SELECT dengan 2 item atau lebihSatu item per baris
Subquery dalam kurungBlok berindentasi
CASE ... WHEN ... ENDSatu WHEN per baris
Titik komaBaris kosong sebelum pernyataan berikutnya

Pertanyaan umum

Apakah perilaku query saya berubah?

Tidak. Yang berubah hanya spasi, baris baru, dan huruf kata kunci. String, komentar, dan identifier berkutip tetap persis sama. Jalankan query hasil format bila ingin memastikan.

Database apa saja yang didukung?

Tidak terikat satu dialek. Query gaya SQL standar, MySQL, PostgreSQL, dan SQLite bisa ditangani, termasuk backtick, nama berkutip ganda, cast ::, serta placeholder $1 atau :name. Blok khusus vendor seperti isi stored procedure mungkin tidak tertata rapi.

Kenapa item SELECT tunggal tetap satu baris?

Jika daftarnya hanya satu item, baris baru tidak menambah keterbacaan. Dengan dua item atau lebih, setiap item mendapat baris sendiri.

Apa arti peringatan belum ditutup?

Ada tanda kutip atau komentar blok yang dibuka tetapi tidak ditutup. Semua teks setelahnya dianggap bagian dari string atau komentar itu, jadi periksa kutip yang hilang.

Apakah SQL saya dikirim ke suatu tempat?

Tidak. Format dilakukan di browser, jadi query berisi nama tabel atau data tetap di perangkat Anda.