mysql中分组后拼接某个字段
背景
字典表结构如下:
字典类型 字典key 字典值
问题:如果字典类型一样,就把字典的值拼接到一起
GROUP BY()函数的使用
我们可以使用java进行分组,虽然会有些麻烦但也能得到我们想要的结果。
如果我们想用这个分组结果连接其他的表就会很难办了,这时我们可以使用GROUP BY()函数将数据分组,如下:
SELECT
line_type,
dict_value
FROM
bas_business_type_setting
GROUP BY line_type
结果:
虽然分了组,但字典的值只有一个,不符合我们的要求,如何将这个字段进行拼接呢?
mysql为我们提供了GROUP_CONCAT()函数
GROUP_CONCAT()函数的使用
SELECT
line_type,
GROUP_CONCAT(dict_value)
FROM
bas_business_type_setting
GROUP BY line_type
结果:
GROUP_CONCAT函数可以将分组后的字段进行拼接,这样便得到我们想要的结果了,后面也可以以这个结果链接其他表,以实现更复杂的需求。