[PR]100万円が無料で当たる!:今すぐ応募して現金を当てよう!

SQLプログラミング基礎


ホーム サイトマップ
トップページ >結合編

このページは,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.

[PR]衝撃!あなたの本当の裏の顔!:実は貴方はΟΔ県出身?ここで分かる真実