2 つのテーブルT1
&があるとしT2
ます。SQL クエリを使用して、結果の出力テーブルを O1 として取得したい
T1 {SName}
T2 {VName}
O1 {SName, VName}
2 つのテーブルT1
&があるとしT2
ます。SQL クエリを使用して、結果の出力テーブルを O1 として取得したい
T1 {SName}
T2 {VName}
O1 {SName, VName}
何にも参加しておらず、考えられるすべての組み合わせの表が必要な場合:
select SName, VName
into O1
from T1 cross join T2
結合する列がある場合:
select SName, VName
into O1
from T1 inner join T2 on T1.col = T2.col
それを行うにはいくつかの方法があります.1つの簡単な方法は次のとおりです。
select T1.SName,T2.VName from T1,T2;
T1 と T2 の行のすべての組み合わせを含めるには、2 つのテーブルのクロス結合が必要なようです。これを試して:
Select SName, VName From T1 Inner Join T2 On 1=1
得られる行数は、T1 と T2 のそれぞれの行数の積です。
私が正しいかどうかわかりませんが、クロス結合を使用できます。2 つのテーブルがPlayers
あり、最初のテーブルの各行が 2 番目のテーブルの各行と結合されたすべてのレコードを返すGameScores
場合
。SELECT* INTO O1 FROM GameScores CROSS JOIN Players
これは、CROSS JOIN が、結合されたテーブルの行セットのデカルト積を返すことも意味します。
上記の結果を次のように取得します
T1 {SName}
T2 {VName}
O1 {SName, VName}
(SELECT * FROM T1,T2) as O1;
両方のテーブルに単一の値がある場合は確実に機能します。そうでない場合は、T1.SName、T2.VName のような特定の列を選択できます。