SELECT     a.ID, a.DelTag, a.Type, a.SendTime, a.ReadTime,b.Name  FROM  
 a LEFT OUTER JOIN  b ON a.ID = b.ID AND a.Type = '1'
a表
id  type
1    1
2    1
3    2 
b表   
id   name
1     张三
2     李四
3     王五
只想在视图中显示type=1的信息,在不加wherer有前提下怎么实现?
问题:a.type='1'这个条件无效,过滤不出a表type=1的值

解决方案 »

  1.   

    SELECT a.ID, a.DelTag, a.Type, a.SendTime, a.ReadTime,b.Name FROM   
     a LEFT OUTER JOIN b ON a.ID = b.ID 
    where a.Type = '1'
    注意连接方式!
      

  2.   

    SELECT a.ID, a.DelTag, a.Type, a.SendTime, a.ReadTime,b.Name FROM   
     a LEFT OUTER JOIN b ON a.ID = b.ID where a.Type = '1'
      

  3.   


    where a.Type = '1'
      

  4.   

    LEFT OUTER JOIN b ON 表连接条件唯一..
      

  5.   

    SELECT a.ID, a.DelTag, a.Type, a.SendTime, a.ReadTime,b.Name FROM   
     a LEFT OUTER JOIN b ON a.ID = b.ID  
    where a.Type = '1'left join 后面表示连接条件 ;  where后面是查询条件!我是这么理解的!
      

  6.   

    注意on筛选器
    on 是第2步
    left  outer是第三步 on帅选后还是要添加外部行的
    where 筛选器是在添加外部行后再过滤的
      

  7.   

    LEFT JOIN 还不用Where语句,没有办法过滤查询结果的
      

  8.   

    加入where a.type='1'就可以了。
      

  9.   

    注意select语句中left join 和where的区别
    left join 会把on 筛选去掉的外部行再添回来,where过滤最终结果
      

  10.   

    join可以像你这么写
    left join就不可以了  还是加where吧
    感觉这两张表没必要用left join吧