SQL Server Multi -line Text digabungkan ke dalam satu rentetan barisDalam pelbagai senario pangkalan data, anda mungkin perlu menggabungkan nilai rentetan dalam multi -baris ke dalam rentetan tunggal dan koheren. Ini amat berguna apabila anda perlu mengintegrasikan maklumat dari titik data yang berbeza ke dalam abstrak atau paparan yang komprehensif.
pernyataan soalan
Pertimbangkan jadual yang dipanggil "nama", yang mengandungi tiga baris berikut:
Peter
Paul
Mary
penyelesaian- cabaran
- Matlamatnya adalah untuk menukar garis -garis berasingan ini ke dalam satu rentetan yang dipisahkan oleh koma: "Peter, Paul, Mary".
Dalam pangkalan data SQL Server 2017 dan Azure SQL, anda boleh menggunakan fungsi String_AGG () untuk menyelesaikan tugas ini. Tatabahasa string_agg () adalah seperti berikut:
Untuk adegan kami, ungkapan itu akan menjadi lajur nama, dan pemisah akan menjadi koma. Perintah oleh klausa memastikan bahawa nama itu muncul dalam urutan tertentu (iaitu, perintah huruf).
SQL Queryoutput
<code class="language-sql">STRING_AGG(<expression> [ , delimiter ] [ ORDER BY <expression> [ ASC | DESC ] ])</code>Salin selepas log masuk
Penyelesaian Alternatif Versi SQL Versi SQL
Jika anda menggunakan versi awal SQL Server, seperti SQL Server 2005, anda boleh menggunakan kaedah berikut:<code class="language-sql">SELECT STRING_AGG(Name, ', ') AS ConcatenatedNames FROM Names ORDER BY Name;</code>Salin selepas log masuk
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Teks dari Berbilang Baris ke dalam Rentetan Tunggal dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!