如何根据ID组合三个具有相同名称的列?

时间:2017-01-27 04:13:35

标签: mysql sql

我有这样一张桌子:

ID  FIELD ID VALUE
100  1       Sir
100  2       Alex
100  3       Ferguson

我想将这三个组合在一个名为value的列中。这将是弗格森爵士。

这三个记录共享相同的ID,即100.我该怎么做?

2 个答案:

答案 0 :(得分:3)

GROUP_CONCATORDER BY选项一起使用,将分隔符用作空格。

select id, group_concat(value order by field_id separator ' ')
from your_table
group by id;

答案 1 :(得分:0)

检查一下。

        select id, group_concat(`VALUE` separator ' ') as `VALUE`
        from tableName
        group by id;

OR

       select id, group_concat(`VALUE` order by `FIELD ID` separator ' ') as `VALUE` from
        (                          
        select 100 'ID', 1 'FIELD ID', 'sir' as 'VALUE' union
        select 100 , 2  ,  'Alex' union
        select 100 , 3   ,   'Ferguson'
            )a
        group by id;