Pemformat SQL
Pemformat SQL meletakkan setiap klausa utama pada barisnya sendiri. Contohnya, "select a from t where x=1" menjadi 3 baris: "SELECT a", "FROM t", "WHERE x = 1".
Cara guna
- Tampal SQL anda ke dalam kotak input. Pertanyaan contoh dimuatkan untuk menunjukkan hasilnya.
- Pilih sama ada kata kunci huruf besar, huruf kecil atau dibiarkan seperti ditaip, dan pilih 2 ruang, 4 ruang atau tab untuk inden.
- Salin pertanyaan yang telah diformat daripada kotak hasil. Ia dikemas kini semasa anda menaip, dan anda boleh menampal beberapa pernyataan yang dipisahkan oleh koma bertitik.
Cara kiraan
Alat ini memecahkan SQL anda kepada token: perkataan, nombor, rentetan dalam petikan, pengecam dalam petikan, komen, operator dan kurungan. Teks di dalam petikan dan komen tidak pernah diubah.
Klausa utama seperti SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING, LIMIT, UNION, INSERT INTO, VALUES, UPDATE, SET dan setiap JOIN bermula pada baris baharu. Apabila senarai SELECT atau SET mempunyai lebih daripada satu item, setiap item diletakkan pada barisnya sendiri yang berinden. AND dan OR dalam WHERE, HAVING atau ON diinden di bawah klausa, kecuali AND dalam BETWEEN x AND y.
Kurungan yang membuka subpertanyaan memulakan blok berinden baharu dan kurungan penutup kembali ke inden asal. Ungkapan CASE meletakkan setiap WHEN dan ELSE pada barisnya sendiri. Panggilan fungsi mengekalkan kurungan bersambung dengan nama, jadi COUNT(*) kekal bersama.
Kata kunci dan nama fungsi lazim ditukar kepada huruf yang anda pilih. Nama jadual dan lajur dibiarkan seperti yang anda tulis, tetapi lajur yang bernama seperti kata kunci (contohnya key atau index) turut ditukar. Alat ini tidak menyemak sama ada SQL itu sah, dan ia tidak mengikut satu dialek, jadi sintaks luar biasa mungkin berjarak sedikit berbeza.
Apa yang memulakan baris baharu
| Elemen | Susun atur |
|---|---|
| SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING, LIMIT | Baris baharu pada inden semasa |
| JOIN, LEFT JOIN, INNER JOIN dan join lain | Baris baharu, syarat selepas ON kekal pada baris itu |
| AND, OR dalam WHERE, HAVING, ON | Baris baharu, satu tahap lebih dalam |
| Senarai select dengan 2 item atau lebih | Satu item setiap baris |
| Subpertanyaan dalam kurungan | Blok berinden |
| CASE ... WHEN ... END | Satu WHEN setiap baris |
| Koma bertitik | Baris kosong sebelum pernyataan seterusnya |
Soalan lazim
Adakah ia mengubah fungsi pertanyaan saya?
Tidak. Hanya ruang, baris baharu dan huruf kata kunci yang berubah. Rentetan, komen dan pengecam dalam petikan dikekalkan sepenuhnya. Jalankan pertanyaan yang telah diformat untuk memastikan jika perkara itu penting.
Pangkalan data manakah yang disokong?
Ia tidak terikat pada satu dialek. Ia mengendalikan pertanyaan gaya SQL piawai, MySQL, PostgreSQL dan SQLite, termasuk backtick, nama dalam petikan berganda, cast ::, dan pemegang tempat $1 atau :name. Blok khusus vendor seperti badan prosedur tersimpan mungkin tidak tersusun dengan baik.
Mengapa satu item SELECT berada pada baris yang sama?
Apabila senarai hanya ada satu item, baris baharu tidak menambah apa-apa. Dengan dua item atau lebih, setiap satu diletakkan pada barisnya sendiri.
Apa maksud amaran tidak tertutup?
Petikan atau komen blok dibuka tetapi tidak pernah ditutup. Segala-galanya selepasnya dianggap sebagai sebahagian daripada rentetan atau komen itu, jadi semak petikan yang tertinggal.
Adakah SQL saya dihantar ke mana-mana?
Tidak. Pemformatan berlaku dalam pelayar anda, jadi pertanyaan dengan nama jadual atau data kekal pada peranti anda.