先直接給出代碼:
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;
執行結果如下: