SQLite memiliki beberapa mode dan pengaturan yang memungkinkan Anda untuk menampilkan hasil kueri sebagai daftar yang dipisahkan koma.
Misalnya, Anda dapat menggunakan .separator
dot perintah untuk menentukan koma sebagai pemisah. Atau Anda dapat menggunakan mode “kutipan” untuk memformat output sebagai literal string.
Namun, untuk tujuan artikel ini, saya akan menggunakan csv
mode, yang memformat hasil sebagai daftar yang dipisahkan koma, serta dengan tanda kutip ganda di sekitar string. Tanda kutip ganda internal adalah tanda kutip ganda.
Contoh
Dalam contoh ini, saya beralih ke csv
mode, lalu pilih data dari database.
.mode csv
SELECT * FROM Products;
Hasil:
1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0
Perhatikan bahwa tanda kutip ganda internal dikutip ganda, tetapi tanda kutip tunggal internal tidak.
Jika Anda ingin melihat ini dibandingkan dengan mode default SQLite (daftar yang dipisahkan pipa), ini dia menggunakan mode itu.
.mode list
SELECT * FROM Products;
Hasil:
1|Widget Holder|139.5 2|Widget Opener|89.7 3|Bob's "Best" Widget|374.2 4|Blue Widget|63.0
Tambahkan Header Kolom
Anda juga dapat menambahkan header kolom (nama kolom) dengan menggunakan .headers on
.
.headers on
.mode csv
SELECT * FROM Products;
Hasil:
ProductId,ProductName,Price 1,"Widget Holder",139.5 2,"Widget Opener",89.7 3,"Bob's ""Best"" Widget",374.2 4,"Blue Widget",63.0
Jika Anda ingin menghapus header, Anda dapat menggunakan .headers off
.
Simpan Setelan Anda
Mengatur mode seperti ini hanya mengaturnya untuk sesi saat ini. Jika Anda membuka koneksi baru ke SQLite, itu akan kembali ke pengaturan default.
Jika Anda ingin setelan Anda tetap ada, sehingga Anda tidak harus terus mengubah mode setiap kali Anda terhubung ke SQLite, Anda dapat menyimpan setelan Anda di .sqliterc berkas.
Untuk melakukannya, masukkan yang berikut ini ke dalam file teks kosong:
.headers on
.mode csv
Kemudian simpan sebagai .sqliterc di direktori home Anda.
Sekarang ketika Anda menggunakan shell baris perintah SQLite, shell ini akan memeriksa .sqliterc Anda terlebih dahulu file untuk pengaturan apa pun.
GROUP_CONCAT()
Fungsi
Sebagai alternatif, Anda dapat menggunakan Group_Concat()
berfungsi untuk mengonversi hasil kueri ke daftar yang dipisahkan koma dari dalam kueri SQL itu sendiri.