sql列转行

42 阅读1分钟

一 背景

   很多时候我们组以后,分组下还有好几行数据,这时候我们不想让他们呢一一对应。二十相同的组展示在一行。我们可以在mysql中使用下面的代码。
   下面我们假设有一个用户表user,里面有用户姓名,每个部门都有若干个用户。我们需要查出每个部门下有哪些用户。

select 
    a.org, group_concat(distinct a.name order by a.name separator ',') as name
from user a
group by org