mysqlgroupby字段合并问题(group_concat)
  在我们的⽇常mysql查询中,我们可能会遇到这样的情况:
    对表中的所有记录进⾏分类,并且我需要得到每个分类中某个字段的全部成员。
  上⾯的话,⼤家看起来可能不太好懂,下⾯举⼀个例⼦来给⼤家说明。
  现在我们有⼀张表,结构如下:
  现在我们向这张表中插⼊⼀些数据。 
    insert into
test_group_concat  values(default,1,'ppaa',1594802453,0),(default,1,'llcc',1594802453,0),(default,2,'uupp',1594802453,0),(default,2,'ttww',1594802453,0)  现在我们可以看到,数据表的情况如下:
  我的需要是这样的:我需要对type_id进⾏分组,⽽且每个分组下的所有name我都要得到,这个是后应该怎么办呢?
  这样写:select type_id,name from test_group_concat GROUP BY type_id
  我们得到的结果是这样的:
mysql下载不了怎么办  上⾯每个type_id对应只有⼀个name,这显然不符合我们的需求,我们的需求是需要出type_id = 1 这个分类下所有的name,和type_id = 2的所有的name。
  怎么办呢?
  有朋友会想到,“⽤concat就可以解决问题了嘛!”,好的,我们现在试⼀下。
  select type_id,concat(name) as names from test_group_concat GROUP BY type_id
  结果如下:
  很显然,没有达到我们的预期,怎么办!!!
  mysql中给我们提供了⼀个函数:group_concat,利⽤这个函数,我们就能够很好的解决上述问题。我们试⼀下。
  select type_id,group_concat(name) as names from test_group_concat GROUP BY type_id
  结果如下:
  上述结果,很好的满⾜了我们的需求。
  那有朋友就会问了,如果我不仅想知道分类某个字段的全部信息,我还想要某两个字段连接在⼀起的所有信息,我们可以这么去写。  select type_id,group_concat(id,',',name) as names from test_group_concat GROUP BY type_id

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。