Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Isih Nilai dalam Penyata GROUP_CONCAT?

Bagaimana untuk Isih Nilai dalam Penyata GROUP_CONCAT?

Linda Hamilton
Lepaskan: 2024-11-19 19:02:02
asal
708 orang telah melayarinya

How to Sort Values in GROUP_CONCAT Statements?

Isih Nilai dalam Penyata GROUP_CONCAT

Fungsi GROUP_CONCAT dalam MySQL membolehkan anda menggabungkan nilai yang dikumpulkan mengikut lajur tertentu. Walau bagaimanapun, secara lalai, nilai tidak diisih. Untuk menangani perkara ini, terdapat penyelesaian yang mudah.

Penyelesaian:

Sintaks GROUP_CONCAT dengan keupayaan pengisihan ialah:

GROUP_CONCAT(DISTINCT <expression> ORDER BY <order_expression> <direction> SEPARATOR <separator>)
Salin selepas log masuk

Di mana:

  • : Nilai yang akan digabungkan
  • : Lajur atau ungkapan yang digunakan untuk mengisih
  • : Arah pengisihan (ASC atau DESC)
  • : Pembatas yang digunakan untuk memisahkan nilai yang digabungkan

Contoh:

Dalam pertanyaan yang disediakan, untuk mengisih nilai yang digabungkan mengikut abjad, anda boleh mengubah suainya seperti berikut:

GROUP_CONCAT((SELECT GROUP_CONCAT(parent.name SEPARATOR " &raquo; ") 
FROM test_competence AS node, test_competence AS parent 
WHERE node.lft BETWEEN parent.lft AND parent.rgt 
  AND node.id = l.competence 
  AND parent.id != 1 
GROUP BY parent.id
ORDER BY parent.name) SEPARATOR "<br />\n") AS competences
Salin selepas log masuk

Dengan menyatakan ORDER BY parent.name dalam subquery, nilai akan diisih mengikut abjad sebelum disatukan. Ini akan mengeluarkan hasil yang diingini:


Pentadbiran » Organisasi

Kraftangan » Joinery


Atas ialah kandungan terperinci Bagaimana untuk Isih Nilai dalam Penyata GROUP_CONCAT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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