仮にこうだとして・・・
create table A(id int,a1 varchar(20),a2 varchar(20));
create table B(id int,b1 varchar(20),b2 varchar(20));
create table C(id int,c1 varchar(20),c2 varchar(20),c3 varchar(20));
insert into A values(1,'あ','い');
insert into B values(1,'う','え'),(1,'お','か');
insert into C values(1,'き','く','け'),(1,'こ','さ','し');
idで結合するのはこうですね
select A.id,a1,a2,b1,b2,c1,c2,c3 FROM A
inner join B on A.id=B.id
inner join C on A.id=C.id;
当然結果はこうです
id、a1、a2、b1、b2、c1、c2、c3
1、あ、い、う、え、き、く、け
1、あ、い、お、か、き、く、け
1、あ、い、う、え、こ、さ、し
1、あ、い、お、か、こ、さ、し
ここからなんでもいいのでとりあえず1行抜き出せばいいのならLIMIT 1です
select A.id,a1,a2,b1,b2,c1,c2,c3 FROM A
inner join B on A.id=B.id
inner join C on A.id=C.id
LIMIT 1;
ただし、[id、あ、い、う、え、き、く、け]がほしいなら
そのデータを特定するなんらかのロジックが必要です。
データベースでは出現する順番は必ずしも登録順ではありません。
お礼
詳細な回答を頂き、誠にありがとうございます。 select A.id,a1,a2,b1,b2,c1,c2,c3 FROM A inner join B on A.id=B.id inner join C on A.id=C.id; ここまではたどり着けたのですが、この先がわかりませんでした。 プログラムの都合上、出来ればMySQLのクエリ1文のみで実現したかったのですが、やはり難しいようですね・・・ 頂いた内容を参考に、また質問を立てるかもしれません。 ありがとうございました。