在查询中选择多行时,组连接不起作用


Group concat not working when using in query for selecting multiple rows?

我使用了下面的查询,但没有返回期望的结果。

SELECT GROUP_CONCAT(DISTINCT `equipment_id`) FROM `cars` 
WHERE `car_id` IN (2,7);
table => cars
car_id      equipment_id 
2           1,3,4,6,7
7           1,4,6,7 
Returning => 1,3,4,6,7,1,3,4,7
It should return => 1,3,4,6,7

谢谢

正如Abhik指出的,您应该规范化您的数据库模式。在单个属性中存储逗号分隔的值并不是使用RDBMS的方法。

创建一个car_id, equipment_id的表,每个car_id只有1个equipment_id。让(car_id,equipment_id)构成主键。