MySQL の結果をカンマ区切りのリストとして表示する 質問する

MySQL の結果をカンマ区切りのリストとして表示する 質問する

次のようなクエリを実行する必要があります:

SELECT p.id, p.name, 
       (SELECT name 
          FROM sites s 
         WHERE s.id = p.site_id) AS site_list
  FROM publications p

しかし、サブ選択では、データの列ではなく、コンマで区切られたリストを返すようにしたいです。これは可能でしょうか。可能であれば、どのようにすればよいでしょうか。

ベストアンサー1

使用できますグループ連結それを実行するには、例えば次のような

SELECT p.id, p.name, GROUP_CONCAT(s.name) AS site_list
FROM sites s
INNER JOIN publications p ON(s.id = p.site_id)
GROUP BY p.id, p.name;

おすすめ記事