如何根据1个字段值的不同进行分组

mbzjlibv  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(326)

我是mysql的新手,尝试寻找解决我问题的方法,但没有放弃,没有找到它,或者根本不知道如何使用给定的解决方案,所以我希望你能帮助我。
我有一个mysql数据库表,包含以下信息。数据集

Data   Attributename  Objectname    Location
--------------------------------------------
car    name           car           front
car    name           car           back
car    type           car           MPV
door   name           car           left

我想让我的查询给我这个结果?逗号也可以是换行符。

Data   Attributename  Objectname    Location
------------------------------------------------
car    name           car           front, back
car    type           car           MPV
door   name           car           left

因此,基本上我如何查询这个表来按这个结果分组(对不起,英语不好),或者我需要在代码中解决这个问题?
谢谢你的帮助

vaj7vani

vaj7vani1#

尝试 GROUP_CONCAT 在选择和 GROUP_BY ```
Select Data,Attributename,Objectname,GROUP_CONCAT(Location) As Location
From table
Group by Data,Attributename,Objectname

z3yyvxxp

z3yyvxxp2#

请尝试以下逗号:

SELECT Data,Attributename,Objectname, GROUP_CONCAT(Location SEPARATOR ',') AS Location
FROM table GROUP BY Data,Attributename,Objectname;

请尝试以下换行:

SELECT Data,Attributename,Objectname, GROUP_CONCAT(Location SEPARATOR '\n') AS Location
FROM table GROUP BY Data,Attributename,Objectname;

也可以仅为唯一值合并:

SELECT Data,Attributename,Objectname, GROUP_CONCAT(DISTINCT Location SEPARATOR '\n') AS Location
FROM table GROUP BY Data,Attributename,Objectname;

相关问题