Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menggabungkan Berbilang Baris Data ke dalam Baris Tunggal Menggunakan Klausa GROUP BY SQL?

Bagaimanakah Saya Boleh Menggabungkan Berbilang Baris Data ke dalam Baris Tunggal Menggunakan Klausa GROUP BY SQL?

Linda Hamilton
Linda Hamiltonasal
2025-01-15 08:58:44540semak imbas

How Can I Combine Multiple Rows of Data into a Single Row Using SQL's GROUP BY Clause?

Gunakan GROUP BY untuk menggabungkan berbilang baris data menjadi satu baris

Semasa pemprosesan data, anda mungkin menghadapi jadual di mana setiap baris mewakili entiti unik dan lajur tertentu perlu disatukan merentas entiti ini. Ini berlaku apabila anda perlu menyertai berbilang baris hasil untuk lajur tertentu ke dalam satu baris.

Andaikan terdapat jadual bernama "ActorsInfo" dengan dua lajur: "Movie" dan "Actor". Setiap baris mewakili gabungan filem dan pelakon yang berkaitan. Matlamat anda adalah untuk mengubah data ini menjadi jadual baharu yang mengandungi lajur "Filem" dan lajur "ActorList" yang mengandungi senarai semua pelakon yang dipisahkan koma dalam setiap filem.

Untuk ini, klausa GROUP BY SQL amat berguna. GROUP BY membolehkan anda mengumpulkan baris berdasarkan nilai satu atau lebih lajur dan kemudian menggunakan fungsi agregat untuk mengira maklumat ringkasan dalam setiap kumpulan.

Kunci di sini ialah fungsi agregat string_agg(). Ia menggabungkan nilai dari lajur yang ditentukan, dipisahkan oleh pembatas pilihan anda. Dalam kes ini, sintaksnya ialah:

<code class="language-sql">SELECT Movie, string_agg(Actor, ', ') AS ActorList
FROM ActorsInfo
GROUP BY Movie;</code>

Kumpulkan baris mengikut tajuk filem dengan menyatakan "Filem" dalam klausa SELECT dan GROUP BY, dan hitung lajur ActorList dengan menggabungkan nilai Actor yang dipisahkan dengan koma.

Hasilnya ialah jadual baharu di mana setiap baris mewakili filem unik dan lajur "ActorList" mengandungi senarai lengkap semua pelakon yang terlibat dalam filem itu.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Berbilang Baris Data ke dalam Baris Tunggal Menggunakan Klausa GROUP BY SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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