在mysql中按一个字段分组,并将另一个字段值作为一个字符串

7z5jn7bk  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(448)

我的table是那样的。

Location | Building | Department | 

L1        | B1       | D1      
L2        | B2       | D2      
L3        | B1       | D3

我要做的是一个查询,它按建筑物统计位置和组,然后将该建筑物中的部门显示为字符串

Building | Count L | Departments | 

B1        | 2       | D1,D3     
B2        | 1       | D2
smdnsysy

smdnsysy1#

select building, Count(location) as 'Count L', GROUP_CONCAT(COALESCE(Departments,'')) 
from yourtable
group by building

这也将有助于空值。

eqqqjvef

eqqqjvef2#

你可以用 Group_Concat 功能
定义:
此函数返回一个字符串结果,其中包含组中串联的非空值。如果没有非null值,则返回null
查询如下:

Select 
   Building, 
   count(Location) as `Count L`, 
   group_concat(Department) as Departments
From
   your_table
Group By
   Building

相关问题