GROUP_CONCAT 関数の使用方法がわかりません。クエリが、実際には必要のない値を繰り返しているように見えるからです。
私は3つのテーブルを持っています:
------------------
Content
------------------
cid | title
2334 | Lorem Ipsum
------------------
Organizers
------------------
cid | name | sort
2334 | John Doe | 0
------------------
Participants
------------------
cid | name | sort
2334 | Jane Doe | 0
2334 | Bob Hope | 1
2334 | Bart Simpson | 2
以下を生成するクエリを作成しようとしています。
cid | title | organizers | participants
2334 | Lorem Ipsum | John Doe | Jane Doe, Bob Hope, Bart Simpson
したがって、GROUP_CONCAT を使用しようとしています。しかし、値が繰り返されているため、探している結果を出力する方法がわかりませんか?
SELECT GROUP_CONCAT(co.name) as organizers,
GROUP_CONCAT(cp.name) FROM content n
LEFT JOIN organizers co ON n.cid = co.cid
LEFT JOIN participants cp ON n.cid = cp.cid
WHERE n.cid = 2334
上記の結果は次のとおりです。
cid | title | organizers | participants
2334 | Lorem Ipsum | John Doe, John Doe, John Doe | Jane Doe, Bob Hope, Bart Simpson