首先,我们查询一首歌曲 以及对应的标签名称
SELECT
`name`,
works_id
FROM
app_category
INNER JOIN app_works_categories ON app_category.id = app_works_categories.category_id
WHERE
works_id = '00330c0c9e***'
但是,我们想按歌曲ID分组,并将标签合并到一起,如下图
怎么办呢?
我们就要使用我们的分组聚合函数了
当然,先介绍下语法。
语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )
因为默认分隔符是逗号,我们就偷点懒。
SELECT
GROUP_CONCAT(`name`) 标签,
works_id
FROM
app_category
INNER JOIN app_works_categories ON app_category.id = app_works_categories.category_id
WHERE
works_id = '00330c0c9e***'
这样就可以实现多条数据的合并。
当然如果你查询的数据很多,要根据某个其他字段分组,记得使用group by。