mysql中将多条记录合并成一行数据进行显示,说实话,实际开发中很少有这样的,但既然碰见了,在这里几记录一下吧:
正常情况下:
SELECT
REPAY_WAYS,
REPAY_PLAN_ID
FROM
repay_line_info
WHERE
REPAY_WAYS IS NOT NULL
ORDER BY
REPAY_PLAN_ID;
查询出的数据也是这样的:
但是我想把同一组的数据显示到同一行里面,那就需要依赖GROUP_CONCAT这个函数了。使用如下:
SELECT
GROUP_CONCAT(
CONCAT(
rlo.REPAY_AMOUNT,
'元 ',
rlo.REPAY_WAYS
)
) AS REPAY_WAYS,
rlo.REPAY_PLAN_ID
FROM
repay_line_info rlo
GROUP BY
rlo.REPAY_PLAN_ID
结果如下图: