2012-08-06 23 views
50

私は3つのテーブルを持っています。インナー3つのテーブルを結合する

私のテーブルは、

TableA TableB TableC 

私はA-Bに参加したいが、その後もB-Cすべてこの共通のフィールドで私は一般的な呼び出します。

私はこのように2つのテーブルを結合しました。

dbo.tableA AS A INNER JOIN dbo.TableB AS B 
ON A.common = B.common 

第3のものを追加するにはどうすればよいですか?

+2

dbo.tableA A Aインナー・ジョインdbo.TableB AS B オンA.common = B.commonインナー・ジョインdbo.TableC on C.common = B.common – praveen

答えて

87
select * 
from 
    tableA a 
     inner join 
    tableB b 
     on a.common = b.common 
     inner join 
    TableC c 
     on b.common = c.common 
+0

出力テーブルはどのように見えますか? SOの質問とコメントを各質問に、それぞれの質問に答えて答えに答えます。 3つのテーブルの質問、答え、コメント。 –

+1

@ışıktableAのすべての列を取得し、次にtableBのすべての列を取得し、次にtableCのすべての列を取得します。または、希望の列を選択することができます – podiluska

+1

2番目のINNER JOINの後ろに何が起こっているのですか?最初の結合から作成された一時テーブルがありますか?一時テーブルがある場合、そのテーブルをどのように呼び出すか – lft93ryt

6
dbo.tableA AS A INNER JOIN dbo.TableB AS B 
ON A.common = B.common INNER JOIN TableC C 
ON B.common = C.common 
11

だけで同じことをaginを行うが、その後表C

SELECT * 
FROM dbo.tableA A 
INNER JOIN dbo.TableB B ON A.common = B.common 
INNER JOIN dbo.TableC C ON A.common = C.common 
5

は、次のコード

select * from TableA A 
inner join TableB B on A.Column=B.Column 
inner join TableC C on A.Column=C.Column 
2

を試すために、この方法を試してください。

SELECT * FROM TableA 
JOIN TableB ON TableA.primary_key = TableB.foreign_key 
JOIN TableB ON TableB.foreign_key = TableC.foreign_key 
関連する問題