我有这样一张桌子:
ID FIELD ID VALUE
100 1 Sir
100 2 Alex
100 3 Ferguson
我想将这三个组合在一个名为value
的列中。这将是弗格森爵士。
这三个记录共享相同的ID,即100.我该怎么做?
答案 0 :(得分:3)
将GROUP_CONCAT
与ORDER 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;