如A,B两个表,  
  当只显示一个表的数据如A,关系条件只一个如ID时,使用IN更快:  
  select   *   from   A   where   id   in   (select   id   from   B)  
   
  当只显示一个表的数据如A,关系条件不只一个如ID,col1时,使用IN就不方便了,可以使用EXISTS:  
  select   *   from   A   where   exists   (select   1   from   B   where   id   =   A.id   and   col1   =   A.col1)  
   
  当只显示两个表的数据时,使用IN,EXISTS都不合适,要使用连接:  
  select   *   from   A   left   join   B   on   id   =   A.id    
posted on 2009-01-22 14:54  使名扬  阅读(301)  评论(0编辑  收藏  举报