从select语句中分组Concat

时间:2016-09-15 22:10:49

标签: mysql

我不确定我的方法是否可行,但是我试图在一个连接2个字段的select语句上执行group_concat。我收到错误:子查询每次返回超过1行。任何人都可以帮助我解决问题,或者更好地解决这个问题。

select t.recnum, (select group_concat((select concat(b.origtests,'^', d.name) as testing
                from order_origtests b
                join profile c on c.code = b.origtests
                join department d on d.recnum = c.dept
               )))
            FROM order_ t

1 个答案:

答案 0 :(得分:0)

您不能将SELECT放在GROUP_CONCAT内。它应该是

select t.recnum, (
    select group_concat(concat(b.origtests,'^', d.name))
    from order_origtests b
    join profile c on c.code = b.origtests
    join department d on d.recnum = c.dept
    ) AS testing
FROM order_ t

请注意,您的子查询与t中的任何内容都没有关联,因此您为每个testing获取相同的recnum列。