首页 > 解决方案 > 如何使用 SQL 查询将多列数据放入同一个单元格?

问题描述

我需要得到一个 sql 结果,它将表中的多列数据获取到结果的单个单元格中。查询将如何?

假设我有这两张桌子:

表格1:

Name     spec
--------------
James    front
--------------
Henry    front
--------------
Henry    back

表 2:

Name     dir
--------------
James    123
--------------
Henry    456

我想得到这个结果:

结果表:

Name     spec     dir
-----------------------
James    front    123
-----------------------
Henry    front    456
         back
-----------------------

标签: mysqlsqldatabase

解决方案


您可以尝试使用group_concat()功能

    select a.name, group_concat(spec SEPARATOR ' '),dir
    from table1 a inner join table2 b on a.name=b.name
    group by a.name,dir

推荐阅读