テーブル名:×
id name id は主キー
1 xxxx
2 yyyy
テーブル名: y
sno 主キー ID 外部キー クラス
1 1 first
2 1 second
出力
id
xxxx first second
行ごとに名前を繰り返したくない
SELECT x.name, y.class from x,y WHERE x.id = y.id
このクエリは、最初に xxxx、2 番目に xxxx として出力されます
テーブル名:×
id name id は主キー
1 xxxx
2 yyyy
テーブル名: y
sno 主キー ID 外部キー クラス
1 1 first
2 1 second
出力
id
xxxx first second
行ごとに名前を繰り返したくない
SELECT x.name, y.class from x,y WHERE x.id = y.id
このクエリは、最初に xxxx、2 番目に xxxx として出力されます
GROUP BY y.id
重複を避けるために追加します。
SELECT x.name, y.class
FROM x
LEFT JOIN (SELECT DISTINCT id, class FROM y) y
ON x.id = y.id;
これを試して:
set @yclass:='';
select a.name,max(class) as class
from
(select @xname:=name as name,@yclass:=concat(@yclass,' ',y.class) as class
from x join y
on x.id=y.id)a