将mysql请求中的多行(一列)合并到一个字段中

时间:2013-10-17 15:08:57

标签: mysql sql

如果可能的话,我想将一个查询的结果收集到一个单独的字段中。

请求是:

select  group_concat(col1) from table1
group by col3, col2
having count(*)>1

结果如下:

'123','124','125'
'123','125'
'126','127'
'123','127'

我正在寻找的结果:

'123','124','125','123','125','126','127','123','127'

我尝试再次使用我的group_concat,连接函数,或者将整个查询用作子查询而没有太大成功......

1 个答案:

答案 0 :(得分:0)

您正在寻找找到的GROUP_CONCAT聚合函数。但是您需要再次对中间结果进行分组。

显然你已经尝试过,但由于你没有发表你的查询,我会把它给你:

select group_concat(col1intermediate) as col1total
from
  (select group_concat(col1) as col1intermediate
  from table1
  group by col3, col2
  having count(*)>1) as alias_subquery

我不知道为什么你自己的尝试失败了。也许您忘了在聚合列中添加别名(col1intermediate)?