Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menggabungkan dan Menghimpunkan Berbilang Baris dalam Oracle?

Bagaimana untuk Menggabungkan dan Menghimpunkan Berbilang Baris dalam Oracle?

Susan Sarandon
Lepaskan: 2025-01-04 02:56:39
asal
535 orang telah melayarinya

How to Concatenate and Group Multiple Rows in Oracle?

Gabungkan dan Kumpulan Berbilang Baris dalam Oracle

Dalam senario di mana anda mempunyai jadual dengan berbilang baris yang memerlukan penggabungan dan pengumpulan, penggunaan fungsi LISTAGG dalam Oracle 11g menyediakan yang mudah penyelesaian:

SELECT group_name, LISTAGG(name, ', ') WITHIN GROUP (ORDER BY GROUP) AS "names"
FROM name_table
GROUP BY group_name
Salin selepas log masuk

Fungsi LISTAGG mengagregatkan berbilang nilai daripada sekumpulan baris, memisahkannya dengan pembatas yang ditentukan (di sini, ','). Ia memudahkan proses penggabungan dan pengumpulan, menghasilkan hasil yang diingini.

Untuk pangkalan data sebelum Oracle 11g, pendekatan alternatif menggunakan analitik tersedia:

SELECT grp, ltrim(max(sys_connect_by_path(name, ',' )), ',') AS scbp
FROM (
    SELECT name, grp, row_number() OVER (PARTITION BY grp ORDER BY name) AS rn
    FROM tab
)
START WITH rn = 1
CONNECT BY PRIOR rn = rn - 1 AND PRIOR grp = grp
GROUP BY grp
ORDER BY grp
Salin selepas log masuk

Pertanyaan ini memanfaatkan CONNECT BY klausa dan row_number() fungsi analitik untuk menggabungkan dan mengumpulkan nilai secara berulang, menghasilkan output yang sama seperti Kaedah LITAGG.

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan dan Menghimpunkan Berbilang Baris dalam Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan