Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk mengumpulkan dalam mysql?

Anggap jadual pengguna

id nama kumpulan
1 evan admin
1 evan1 admin
1 evan2 admin
1 evan3 pengguna
1 evan4 pengguna

select * from user group by user.group 出来的数据只有2条,而不是 user.groupadmin的一组,user.groupuser ialah kumpulan

Penyelesaian, mysqlBagaimana untuk mengumpulkan tatasusunan? Rasanya banyak tempat yang perlu berkumpul.

PHP中文网PHP中文网2663 hari yang lalu1042

membalas semua(2)saya akan balas

  • 伊谢尔伦

    伊谢尔伦2017-07-04 13:45:47

    Saya tidak begitu faham maksud anda, jadi gunakan group by user.group 就会出现2条,因为你的数据里只有 adminuser 两种 group data.

    分组 是需要结合 count, sum dan kaedah statistik lain digunakan.

    Jika itu yang anda mahukanadmin的数据在一起,user 的数据在一起,那就直接 order by user.group Itu sahaja

    balas
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-07-04 13:45:47

    Gunakan GROUP BY子句的话,如果只有一个条件的话,只按照该条件满足的所有唯一值,一个为一条数据。对于GROUP BY user.group,你只有两种唯一值:useradmin, jadi hanya akan ada dua keping data.

    Jika anda ingin menyatukan user.groupdata yang sama, seperti yang dinyatakan di atas, hanya gunakan pengisihan.

    Jika anda ingin menggabungkan yang sama user.group合并成一行且不丢失user.name数据,可以使用GROUP_CONCAT()函数,将所有组内的name ke dalam satu baris tanpa kehilangan data user.name, anda boleh menggunakan fungsi GROUP_CONCAT() untuk menggabungkan name< dalam semua kumpulan /kod>Digabungkan menjadi rentetan yang dipisahkan koma (sudah tentu ia boleh ditukar kepada pembatas lain)

    SELECT *, GROUP_CONCAT(user.name) FROM user GROUP BY user.group

    balas
    0
  • Batalbalas