JOINするときにINNER or LEFT or RIGHT or FULLを省略するとどうなるだっけ?
他人が書いた変更対象のソースコードに
SELECT a,b FROM AAA JOIN BBB ON b = a
みたいなのが出てきて思考停止。普段は明示的にINNER or LEFT or RIGHT or FULLを書いているのでどの扱いになるのかまるで判らない。調べようとしてもうまくぐぐれない。orz
もともと
JOINのディフォルトが内部結合なのでINNERが省略可能で、左外部結合・右外部結合・完全外部結合のときにOUTERが省略可能なんだよな。
SELECT a,b FROM AAA INNER JOIN BBB ON b = a ----- 省略可能 SELECT a,b FROM AAA LEFT OUTER JOIN BBB ON b = a ----- 省略可能 SELECT a,b FROM AAA RIGHT OUTER JOIN BBB ON b = a ----- 省略可能 SELECT a,b FROM AAA FULL OUTER JOIN BBB ON b = a ----- 省略可能
こちらで再履修↓
http://msdn.microsoft.com/ja-jp/library/aa213228.aspx