Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Kembalikan Hasil Kueri sebagai Daftar Dipisahkan Koma di Oracle

Di Oracle, kita dapat menggunakan LISTAGG() berfungsi untuk mengonversi hasil kueri kami ke daftar yang dipisahkan koma.

Jadi, alih-alih setiap nilai di-output dalam baris terpisah, semua nilai di-output dalam satu baris, dipisahkan dengan koma (atau pembatas lain yang kita pilih).

Contoh

Bayangkan kita menjalankan kueri berikut:

SELECT last_name 
FROM employees
WHERE job_id = 'IT_PROG';

Hasil:

   LAST_NAME 
____________ 
Hunold       
Ernst        
Austin       
Pataballa    
Lorentz      

Kueri itu mengembalikan lima baris, masing-masing dengan nilai yang berbeda.

Jika kita ingin nilai tersebut menjadi output pada satu baris, kita dapat melakukan hal berikut:

SELECT LISTAGG(last_name, ', ')
FROM employees
WHERE job_id = 'IT_PROG';

Hasil:

                      LISTAGG(LAST_NAME,',') 
____________________________________________ 
Hunold, Ernst, Austin, Pataballa, Lorentz    

Yang kami lakukan hanyalah meneruskan nama kolom ke LISTAGG() fungsi, serta pembatas yang kami pilih.

Kita bisa menggunakan pembatas yang berbeda atau kita bisa menghilangkan argumen itu sama sekali sehingga semua item digabungkan.

Fungsi ini juga menerima DISTINCT klausa (untuk menghapus nilai duplikat), dan ORDER BY klausa (untuk memesan output dari fungsi).

Fungsi ini juga bisa sangat berguna saat mengelompokkan hasil kueri.

Lihat LISTAGG() Fungsi di Oracle untuk lebih banyak contoh.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengulangi nilai dalam kolom

  2. 50 Nuansa Ujian Sertifikasi Database Oracle

  3. Format Angka sebagai Persentase di Oracle

  4. Pengenalan Paket PL/SQL Di Database Oracle

  5. ORA-00904:pengenal tidak valid