Inline requête rapport avec clause de problème de performance

J'ai une requête à la structure un peu comme ci-dessous:

select (select first_name 
        from sub_table_1,
             sub_table_2,
             sub_table_3 
        where <where clause for sub_table 1,2,4> 
          and sub_table_1.col_1=table_1.col_1) first_name ,
       (select last_name 
        from sub_table_1,
             sub_table_2,
             sub_table_3 
        where <where clause for sub_table 1,2,4> 
              and sub_table_1.col_1=table_1.col_1) last_name ,
       <other select clause for table 1,2,3>
from table_1,
     table_2,
     table_3
where <Where clauses>
union
select (select first_name 
        from sub_table_1,
             sub_table_2,
             sub_table_3 
        where <where clause for sub_table 1,2,3> 
          and sub_table_1.col_1=table_4.col_1) first_name ,
       (select last_name 
        from sub_table_1,
             sub_table_2,
             sub_table_3 
        where <where clause for sub_table 1,2,3> 
          and sub_table_1.col_1=table_4.col_1) last_name ,
       <other select clause for table 4,5,6>
from table_4,
     table_5,
     table_6
where <Where clauses>

Je veux comme je savoir si la prise de la partie:

(select first_name , last_name
    from sub_table_1,
    sub_table_2,
    sub_table_3 
    where <where clause for sub_table 1,2,3> 
    and sub_table_1.col_1=table_4.col_1) first_name ,
        (select last_name 
    from sub_table_1,
    sub_table_2,
    sub_table_3 
    where <where clause for sub_table 1,2,3> )

va m'aider à en faire la requête plus rapide et mieux ou va affecter.

également noter que, cette sous-requête peut récupérer environ 10000 enregistrements en elle-même.

s'il vous plaît aider

  • Essayer les deux. Laissez-nous savoir laquelle est la plus rapide.
  • Sans réponse, à moins que la requête est fourni. En tout cas, deux choses: utilisez des Jointures internes et fossé des sous-requêtes.
InformationsquelleAutor Fr_nkenstien | 2013-02-15