我在数据库中有 2 个表:mainTable 和分类表:
主表:
id | classification_id | name
---------------------------------------
1 | 1 | Name1
2 | 2,3,4 | Name2
3 | 1,4 | Name3
4 | 4 | Name4
分类表:
classification_id | class_name
---------------------------------------
1 | Class Name1
2 | Class Name2
3 | Class Name3
4 | Class Name4
例如,我想从 mainTable 中选择 ID 为 3 的行,例如:
id = 3
class_name = Class Name1, Class Name4
Name = Name3
我尝试了这个选择,但这仅返回数组中的第一个元素(例如 ID 为 3 的行的示例,仅返回 Class Name1)
SELECT i.*,
(SELECT GROUP_CONCAT(cl.class_name) FROM classificationTable as cl WHERE cl.classification_id IN(i.classification_id)) as class_name
FROM mainTable as i;
帮助PLZ。