[PR]100万円が無料で当たる!:今すぐ応募して現金を当てよう!
トップページ
>結合編
このページは,Access2000をベースに記述しています.
SQLは,データベース(SQLServer,Oracleなど)によって異なる場合がありますので注意してください.
内部結合
内部結合は,結合するキーを基準として,お互いの内容と一致するもののみ抽出する結合です.
[書式]
FROM <表名> INNER JOIN <表名2> ON <結合条件>
[例-名簿表と名簿2表をIDで内部結合する]
SELECT 名簿.氏名,名簿.年齢
FROM 名簿 INNER JOIN 名簿2 ON 名簿.ID = 名簿2.ID
左外部結合
左外部結合は,結合するキーを基準として,左側の表の内容をすべて抽出し,右側の表の内容は,左側の表の内容と一致するもののみ抽出する結合です.
[書式]
FROM <表名> LEFT JOIN <表名2> ON <結合条件>
[例-名簿表と名簿2表をIDで左外部結合する]
SELECT 名簿.氏名,名簿.年齢
FROM 名簿 LEFT JOIN 名簿2 ON 名簿.ID = 名簿2.ID
右外部結合
右外部結合は,結合するキーを基準として,右側の表の内容をすべて抽出し,左側の表の内容は,右側の表の内容と一致するもののみ抽出する結合です.
[書式]
FROM <表名> RIGHT JOIN <表名2> ON <結合条件>
[例-名簿表と名簿2表をIDで右外部結合する]
SELECT 名簿.氏名,名簿.年齢
FROM 名簿 RIGHT JOIN 名簿2 ON 名簿.ID = 名簿2.ID
自己結合
特殊な結合方式である自己結合は,自分自身と結合します.
自己結合は,データの内部的な整合性を確認するときに役立ちます.
[書式]
FROM <表名>,<表名> AS <表名の別名> ON <結合条件>
[例-名簿表と名簿表(別名 名簿2)を結合する]
SELECT * FROM 名簿,名簿 AS 名簿2
サブクエリ
クエリのなかにクエリを埋め込むクエリのことで,副問い合わせとも呼びます.
ひとつの値を求めるサブクエリ
[書式]
SELECT <列名>
FROM <表名>
WHERE <列名> =
(SELECT <列名>
FROM <表名>
WHERE <結合条件>)
[注意]
サブクエリの結果は,必ず一意に定まるように設定します.
複数の値を求めるサブクエリ
[書式]
SELECT <列名>
FROM <表名>
WHERE <列名> IN
(SELECT <列名>
FROM <表名>
WHERE <結合条件>)
選択編へ
演算子編へ
更新日:2006/4/1
Copyright (C)2003-2006 Orakumiko All rights reserved.