首页 新闻 搜索 专区 学院

Ms sql 左连接问题

0
悬赏园豆:5 [已解决问题] 解决于 2012-10-12 19:18

a表       id   name     b表     id     job   parent_id  
              1   张3                   1     23     1  
              2   李四                  2     34     2  
              3   王武                  3     34     4  
                                           4     34     2

 

左连接   
  select   a.*,b.*   from   a   left   join   b     on   a.id=b.parent_id  
   
  结果是    
  1   张3                    1     23     1  
  2   李四                  2     34     2  
  3   王武                  null   
  4   李四                  4     34     2



有没办法左连接的时候李四只显示一次,也就是a表有叫数据就显示几条,不受比表的影响    

jason2013的主页 jason2013 | 小虾三级 | 园豆:1998
提问于:2012-10-12 17:55
< >
分享
最佳答案
0

 不显示B的全部数据即可,试试下面的语句

SELECT  a.*, b.job
FROM    a
        LEFT   JOIN ( SELECT DISTINCT
                                parent_id, job
                      FROM      b
                    ) b ON a.id = b.parent_id  

 

 

收获园豆:5
acepro | 小虾三级 |园豆:1218 | 2012-10-12 18:03

好象不行,还有更好的方法吗?

jason2013 | 园豆:1998 (小虾三级) | 2012-10-12 18:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册