在一行中获取一对多关系中的所有值

2 mysql concatenation left-join one-to-many

我的数据库中有一对多的关系. 在此输入图像描述

我想获取所有城市,其中所有电影院都作为CSV添加到一行中.我试过了:

SELECT city.*,CONCAT(cinema_name)
FROM city
LEFT JOIN cinema
ON cinema.city_id=city.city_id
GROUP BY city.city_id
Run Code Online (Sandbox Code Playgroud)

但这只会让第一家电影回归.

Muh*_*eel 15

使用GROUP_CONCAT而不是CONCAT

SELECT
  city.*,
  GROUP_CONCAT(cinema_name) AS `Cinemas`
FROM city
  LEFT JOIN cinema
    ON cinema.city_id = city.city_id
GROUP BY city.city_id
Run Code Online (Sandbox Code Playgroud)