ナチュラルジョインの少なくともどちらか一方の側に複数テーブルの式が 1 つ存在する場合、SQL Anywhere は、ジョイン演算子の左右にあるカラムを比較して、同じ名前のカラムを検索することでジョイン条件を生成します。
次の文を例にとります。
SELECT * FROM (A JOIN B) NATURAL JOIN (C JOIN D); |
この文には 2 つのテーブル式があります。テーブル式 A JOIN B
のカラム名がテーブル式 C JOIN D
のカラム名と比較されると、一致するカラム名のうちあいまいさのないペアに対してジョイン条件が生成されます。「一致するカラム名のうちあいまいさのないペア」とは、カラム名が両方のテーブル式に出現することがあっても同一テーブル式内では 2 回出現しないという意味です。
あいまいなカラム名のペアが 1 つでもあると、エラーになります。ただし、カラム名がもう一方のテーブル式内のカラム名とも一致しなければ、カラム名が同じテーブル式で 2 回出現しても構いません。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |