「Database 結合」の版間の差分
ナビゲーションに移動
検索に移動
1行目: | 1行目: | ||
− | ==Database 結合== | + | ==[[Database 結合]]== |
[[Database]] | [[SQL]] | | [[Database]] | [[SQL]] | | ||
− | === | + | ===INNE[[R]] JOIN=== |
[[File:0327_join01.jpg]] | [[File:0327_join01.jpg]] | ||
=====例===== | =====例===== | ||
− | SELECT * | + | SELECT * F[[R]]OM T1 INNE[[R]] JOIN T2 |
ON T1.KEY = T2.KEY | ON T1.KEY = T2.KEY | ||
<blockquote>対の行で構成</blockquote> | <blockquote>対の行で構成</blockquote> | ||
− | ===LEFT | + | ===LEFT OUTE[[R]] JOIN=== |
[[File:0328_join02.jpg]] | [[File:0328_join02.jpg]] | ||
=====例===== | =====例===== | ||
− | SELECT * | + | SELECT * F[[R]]OM T1 LEFT OUTE[[R]] JOIN T2 |
ON T1.KEY = T2.KEY | ON T1.KEY = T2.KEY | ||
18行目: | 18行目: | ||
− | === | + | ===[[R]]IGHT OUTE[[R]] JOIN=== |
[[File:0329_join03.jpg]] | [[File:0329_join03.jpg]] | ||
=====例===== | =====例===== | ||
− | SELECT * | + | SELECT * F[[R]]OM T1 [[R]]IGHT OUTE[[R]] JOIN T2 |
ON T1.KEY = T2.KEY | ON T1.KEY = T2.KEY | ||
29行目: | 29行目: | ||
<blockquote>※ ON以下の結合条件に、行の絞込み条件を記述してはいけない。対になっていない各行も出力されるため、絞込み条件は機能しない。</blockquote> | <blockquote>※ ON以下の結合条件に、行の絞込み条件を記述してはいけない。対になっていない各行も出力されるため、絞込み条件は機能しない。</blockquote> | ||
====NG==== | ====NG==== | ||
− | SELECT * | + | SELECT * F[[R]]OM T1 LEFT OUTE[[R]] JOIN T2 |
ON T1.KEY = T2.KEY | ON T1.KEY = T2.KEY | ||
AND T1.KEY = '1' | AND T1.KEY = '1' | ||
36行目: | 36行目: | ||
====OK==== | ====OK==== | ||
− | SELECT * | + | SELECT * F[[R]]OM T1 LEFT OUTE[[R]] JOIN T2 |
ON T1.KEY = T2.KEY | ON T1.KEY = T2.KEY | ||
− | + | WHE[[R]]E | |
T1.KEY = '1' | T1.KEY = '1' |
2020年2月16日 (日) 04:23時点における版
目次
Database 結合
INNER JOIN
例
SELECT * FROM T1 INNER JOIN T2 ON T1.KEY = T2.KEY
<blockquote>対の行で構成</blockquote>
LEFT OUTER JOIN
例
SELECT * FROM T1 LEFT OUTER JOIN T2 ON T1.KEY = T2.KEY
<blockquote>対の行、および T1 の対になっていない。各行(※)と T2 のヌル行との連結</blockquote>
RIGHT OUTER JOIN
例
SELECT * FROM T1 RIGHT OUTER JOIN T2 ON T1.KEY = T2.KEY
<blockquote>対の行、および T2 の対になっていない各行(※)と T1 のヌル行との連結</blockquote>
外部結合の注意点
<blockquote>※ ON以下の結合条件に、行の絞込み条件を記述してはいけない。対になっていない各行も出力されるため、絞込み条件は機能しない。</blockquote>
NG
SELECT * FROM T1 LEFT OUTER JOIN T2 ON T1.KEY = T2.KEY AND T1.KEY = '1'
<blockquote>T1.KEY1 で絞り込まれてから結合されるのではないため、T1.KEY = '1' の条件は適用されない。</blockquote>
OK
SELECT * FROM T1 LEFT OUTER JOIN T2 ON T1.KEY = T2.KEY WHERE T1.KEY = '1'
© 2006 矢木浩人