Pemformat Trino
Format Trino dan Presto SQL dengan aturan Trino untuk identifier bertanda kutip ganda, string standar tanpa escape garis miring terbalik, literal X'' dan U&'', subskrip array dan map, serta ekspresi lambda. Klausa seperti WITH, GROUP BY, ORDER BY, OFFSET, dan FETCH FIRST ditempatkan di baris tersendiri, sedangkan kolom diindentasi satu per baris. String dan tanda kurung yang tidak ditutup dilaporkan beserta baris dan kolomnya untuk analis.
Pertanyaan yang sering diajukan
Sintaks Trino apa yang dikenali?
String bertanda kutip tunggal dengan kutip ganda di dalamnya, identifier bertanda kutip ganda, serta literal varbinary X'' dan U&'' Unicode dikenali. Subskrip Array[1] dan map['key'] serta ekspresi lambda seperti x -> x + 1 tetap utuh.
Apakah garis miring terbalik meng-escape karakter dalam string?
Tidak. Dalam Trino, garis miring terbalik di dalam string adalah karakter biasa, dan pemformat mengikuti aturan itu, sehingga 'C:\' merupakan string lengkap.
Bisakah saya memformat kueri Athena untuk Presto dan Amazon?
Ya. Presto dan Athena menggunakan aturan kutip yang sama dengan Trino serta sebagian besar sintaksnya, jadi kueri keduanya diformat dengan cara yang sama.
Bagaimana nama katalog dan skema ditangani?
Nama berkualifikasi seperti hive.sales.orders dan "my-catalog"."schema"."table" tetap tersambung. Tidak ada spasi yang ditambahkan di sekitar titik.
Klausa mana yang ditulis pada baris tersendiri?
WITH, SELECT, FROM, WHERE, GROUP BY, HAVING, WINDOW, ORDER BY, OFFSET, LIMIT, dan FETCH dimulai di baris tersendiri. Operator himpunan UNION, INTERSECT, dan EXCEPT memisahkan kueri yang digabungkannya.
Apakah MERGE didukung?
Ya. Cabang WHEN MATCHED dan WHEN NOT MATCHED dimulai di baris baru.
Apakah kapitalisasi kata kunci berubah?
Tidak. Kata kunci dan nama mempertahankan kapitalisasi yang Anda tulis. Hanya spasi dan pemisah baris yang berubah.
Kesalahan apa saja yang terdeteksi?
String, identifier bertanda kutip, subskrip, dan komentar blok yang tidak ditutup, serta tanda kurung yang tidak seimbang, masing-masing ditandai dengan baris dan kolomnya. Kueri tidak dijalankan pada klaster mana pun.
Seberapa besar input yang dapat diproses?
Maksimal 1 MB per permintaan dan 128 KB per pernyataan. Beberapa pernyataan dipisahkan dengan baris kosong.
Bisakah saya memilih indentasi, dan apakah SQL saya disimpan?
Gunakan 2 atau 4 spasi atau tab. SQL hanya diformat di memori dan tidak pernah disimpan.