我对MySQL不太了解,但我敢打赌,这是有可能的。
我有这两个示例表:
TableA that contains (ID, name)
TableB that contains (TableA_ID, TableC_ID)
我正在尝试从tableA进行视图,该视图还在SET字段中通过对TableA.ID的TableA_ID引用列出了所有TableC_ID。输出应该是这样的:
+------------+------------+------------------------+
| ID | name | set(TableB.TableC_ID) |
+------------+------------+------------------------+
| 1 | maria | (1, 3, 4, 6, 8) |
+------------+------------+------------------------+
希望我已经足够清楚了,谢谢您的关注。
答案 0 :(得分:1)
您是否正在寻找group_concat
SELECT
A.id,
A.name,
GROUP_CONCAT(B.TableC_ID)
FROM TableA AS A
INNER JOIN TableB AS B ON A.id = B.TableA_ID
GROUP BY A.id
为
SELECT A.id, A.name, CONCAT('(',GROUP_CONCAT(B.TableC_ID) , ')') `SET(TableB.TableC_ID)`
FROM TableA AS A
INNER JOIN TableB AS B on A.id = B.TableA_ID
GROUP BY A.id