mysql 列转行,合并字段的方法(必看)
通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。分组必须有个标准,就是根据group by指定的列进行分组。group_concat函数应该是在内部执行了group by语句,这是我的猜测。结果去查找name中去查找哪些值是一样的,如果相等,就全部列出来,以逗号分割进行列出,如下:上面是否可以证明,group_concat只有与group by语句同时使用才能产生效果?下面进行了实际测验SET @@GROUP_CONCAT_MAX_LEN=4手册中提到设置的语法是这样的:SET [SESSION | GLOBAL] group_concat_max_len = val;SET @@global.GROUP_CONCAT_MAX_LEN=4;SELECTgroup_concat原因可以这样理解:group_concat()得到是属于x组的所有成员。假如需要查询的结果是这样:左边显示组名,右边想显示该组别下的所有成员信息。group_concat()指定一个列是最好的情况。那么显示结果类似这样:group_concat
下载地址
用户评论