사용자 테이블 가정
id | 이름 | 그룹 |
---|---|---|
1 | 에반 | 관리자 |
1 | evan1 | 관리자 |
1 | evan2 | 관리자 |
1 | evan3 | 사용자 |
1 | evan4 | 사용자 |
select * from user group by user.group
出来的数据只有2条,而不是 user.group
为admin
的一组,user.group
为 user
는 그룹입니다
솔루션, mysql
배열을 그룹화하는 방법은 무엇입니까? 그룹핑이 필요한 곳이 많은 것 같습니다.
伊谢尔伦2017-07-04 13:45:47
무슨 말인지 잘 모르겠으니 group by user.group
就会出现2
条,因为你的数据里只有 admin
和 user
两种 group
데이터를 사용하세요.
分组
是需要结合 count
, sum
및 기타 통계 방법이 사용됩니다.
네가 원한다면admin
的数据在一起,user
的数据在一起,那就直接 order by user.group
바로 그거야
扔个三星炸死你2017-07-04 13:45:47
GROUP BY
子句的话,如果只有一个条件的话,只按照该条件满足的所有唯一值,一个为一条数据。对于GROUP BY user.group
,你只有两种唯一值:user
和admin
을 사용하면 데이터가 두 개만 남게 됩니다.
위에서 언급한 것과 같이 동일한 user.group
데이터를 하나로 묶으려면 정렬을 사용하면 됩니다.
user.name
데이터를 잃지 않고 동일한 user.group
合并成一行且不丢失user.name
数据,可以使用GROUP_CONCAT()
函数,将所有组内的name
을 하나의 행으로 병합하려면 GROUP_CONCAT()
함수를 사용하여 name<을 병합할 수 있습니다. 모든 그룹에서 /code>쉼표로 구분된 문자열로 결합됩니다(물론 다른 구분자로 변경 가능)