10.接続テーブル
2452 ワード
接続テーブル
せつぞく
ないぶせつぞく
-- ANSI INTER JOIN
SELECT column_name1,column_name2,column_name3
FROM table1 INTER JOIN table2 INTER JOIN table3
ON table1.column_name1 = table2.column_name1;
--
SELECT column_name1,column_name2,column_name3
FROM table1,table2
WHERE table1.column_name1 = table2.column_name1;
デカルト積
接続条件のないテーブル関係から返される結果はデカルト積であり、取得されたローの数は、最初のテーブルのロー数に2番目のテーブルのロー数を乗算します.フォーク接続とも呼ばれるデカルト積の接続を返します.
テーブル別名の使用
SELECT column_name1,column_name2
FROM table1 AS T1, table2 AS T2
WHERE T1.column_name3 = T2.column_name3;
セルフジョイン
SELECT T1.column_name1,T1.column_name2
FROM table1 AS T1,table2 AS T2
WHERE T1.column_name1 = T2.column_name1
AND T2.column_name = 'str';
ナチュラルジョイン
外部ジョイン
SELECT table1.column_name1,table1.column_name2,table2.column_name3
FROM table1 LEFT OUTER JOIN table2
ON table1.column_name1 = table2.column_name1;
集計関数付き接続の使用
SELECT table1.column_name1,
COUNT(table2.column_name2) AS num
FROM table1 LEFT OUTER JOIN table2
ON table1.column_name1 = table2.column_name1
-- GROUP BY,
GROUP BY table1.column_name1;