Quaisquer pedidos de adesão

O elemento de solicitação de junção JOIN pode ser usado para especificar que o otimizador é escolher um método apropriado para junção de duas tabelas em uma ordem específica.

Qualquer tabela pode ser local ou derivada, conforme especificado por um sub-elemento de solicitação de acesso, ou pode ser o resultado de uma operação de junção, conforme especificado por um sub-elemento de solicitação de junção. Uma tabela derivada é o resultado de outro subselect. Esse elemento de solicitação de união é definido pelo tipo complexo anyJoinType.

XML Schema

   <xs:complexType name="anyJoinType">
      <xs:complexContent>
         <xs:extension base="joinType"/>
      </xs:complexContent>
   </xs:complexType>

Descrição

O tipo complexo anyJoinType é uma extensão simples do tipo abstrato joinType. Nenhum novo elemento ou atributos são adicionados.

O exemplo a seguir ilustra o uso do elemento de solicitação de junção JOIN para forçar uma ordem de junção particular para um conjunto de tabelas:
SQL statement:

  select s.s_name, s.s_address, s.s_phone, s.s_comment
     from "Samp".parts, "Samp".suppliers s, "Samp".partsupp ps
     where p_partkey = ps.ps_partkey and
       s.s_suppkey = ps.ps_suppkey and
       p_size = 39 and
       p_type = 'BRASS' and
       s.s_nation in ('MOROCCO', 'SPAIN') and
       ps.ps_supplycost = (select min(ps1.ps_supplycost)
                             from "Samp".partsupp ps1, "Samp".suppliers s1
                             where "Samp".parts.p_partkey = ps1.ps_partkey and
                               s1.s_suppkey = ps1.ps_suppkey and
                               s1.s_nation = s.s_nation)
     order by s.s_name

Optimization guideline:

   <OPTGUIDELINES>
     <JOIN>
       <JOIN>
         <ACCESS TABLE='"Samp".PARTS'/>
         <ACCESS TABLE='S'/>
       </JOIN>
       <ACCESS TABLE='PS'>
     </JOIN>
   </OPTGUIDELINES>
Os elementos de solicitação de junção JOIN especificam que a tabela PARTS na subselect principal deve ser unida com a tabela FORNECEDORES, e que este resultado deve ser unido à tabela PARTSUPP. O otimizador escolherá os métodos de junção para esta sequência particular de joias de forma baseada em custos.