キーワード JOIN を使用し、ジョインタイプを指定していない場合、ON 句を使用しなければ、キージョインがデフォルトです。指定のない JOIN とともに ON 句を使用すると、キージョインはデフォルトにはならず、生成されたジョイン条件は何も適用されません。
たとえば、次の例はキージョインです。キーワード JOIN が使用されており、ON 句もない場合はキージョインがデフォルトだからです。
SELECT * FROM A JOIN B; |
次は、テーブル A とテーブル B のジョインであり、ジョイン条件 A.x = B.y
も使用されています。したがって、このジョインはキージョインではありません。
SELECT * FROM A JOIN B ON A.x = B.y; |
KEY JOIN または NATURAL JOIN を指定し、さらに ON 句も使用すると、最終的なジョイン条件は、生成されたジョイン条件と明示的ジョイン条件の論理積になります。たとえば、次の文にはジョイン条件が 2 つ入っています。1 つはキージョインから生成されたジョイン条件で、もう 1 つは ON 句で明示的に記述されたジョイン条件です。
SELECT * FROM A KEY JOIN B ON A.x = B.y; |
キージョインによって生成されたジョイン条件が A.w = B.z
の場合、次の文は上の文と同等です。
SELECT * FROM A JOIN B ON A.x = B.y AND A.w = B.z; |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |