先直接给出代码:
SELECT GROUP_CONCAT(tag) as tags
FROM table_tag tt
WHERE tt.id in ('1','2')
我们实现合并一个字段的多个结果用到了mysql 函数 GROUP_CONCAT,
现有一个表 table_a 他有一个标签表 table_tag 结构如下:
1.表 table_a :
- a_id:唯一标识
- ......:其他无关字段
2.表 table_tag:
- t_id: 唯一标识
- a_id: table_a 的唯一标识
- tag
- ......:其他无关字段
一个标签 table_tag 对应一个或多个 table_a
现在,要查询 table_a 的信息和它对应的table_tag 并将 tag 字段合并到一起
SELECT a.*,
(SELECT GROUP_CONCAT(t.tag) FROM table_tag t WHERE t.a_id = a.a_id) as tags
FROM table_a where 1 LIMIT 10;
执行结果如下:
如果有帮到您,打个赏呗