日期:2014-05-17  浏览次数:20536 次

左连接显示左表全部数据,如何在加条件进行查询全部
测试数据:
表A:

UnitID UnitNM
110000  名称0
110100  名称1
110200  名称2
110300  名称3
110400  名称4
110500  名称5
110600  名称6
110700  名称7

表B:

UnitID   年   月 状态标识
110000  2012  4   0
110100  2012  5   1
110200  2012  0   2
110300  2012  0   0
110400  2012  0   1
110500  2012  0   2

现在需要查询表B中2013年的数据,显示表A中所有的数据,左连接后加上条件就不显示表A的的全部数据了

------解决方案--------------------
select a.* from a left join (select * from b where 年='2013') b on a.unitid=b.unitid

------解决方案--------------------
B的条件不要放在WHERE中
select A.* from A left join B on A.UnitID = B.UnitID and  B.[年]='2013'  
------解决方案--------------------

select A.* from A left join (select * from b where [年]='2013')B on A.UnitID = B.UnitID