返回顶部
首页 > 资讯 > 数据库 >mysql groupby 字段合并问题(group_concat)
  • 335
分享到

mysql groupby 字段合并问题(group_concat)

摘要

   在我们的日常Mysql查询中,我们可能会遇到这样的情况:     对表中的所有记录进行分类,并且我需要得到每个分类中某个字段的全部成员。   上面的话,大家看起来可能不太好懂,下面举一个例子来给大家说明。   现在我们有一张表,结构如


	mysql groupby 字段合并问题(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

  我们得到的结果是这样的:

  技术图片

 

   上面每个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

  技术图片

 

mysql groupby 字段合并问题(group_concat)

原文地址:https://www.cnblogs.com/573734817pc/p/13306625.html

您可能感兴趣的文档:

--结束END--

本文标题: mysql groupby 字段合并问题(group_concat)

本文链接: https://lsjlt.com/news/7227.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作