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

骑驴快跑 2013-05-30 03:24:43
测试数据:
表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的的全部数据了
...全文
1706 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
MrYangkang 2013-05-30
  • 打赏
  • 举报
回复

select A.* from A left join (select * from b where [年]='2013')B on A.UnitID = B.UnitID 
KevinLiu 2013-05-30
  • 打赏
  • 举报
回复 6
B的条件不要放在WHERE中 select A.* from A left join B on A.UnitID = B.UnitID and B.[年]='2013'
xiaoqi7456 2013-05-30
  • 打赏
  • 举报
回复
select a.* from a left join (select * from b where 年='2013') b on a.unitid=b.unitid
骑驴快跑 2013-05-30
  • 打赏
  • 举报
回复
引用 1 楼 ZaoLianBuXiQi 的回复:
select A.* from A left join B on A.UnitID = B.UnitID WHERE B.[年]='2013'
这个方法我用了,但是如果B表中没有数据,表A也不显示,去掉年条件就可以
MrYangkang 2013-05-30
  • 打赏
  • 举报
回复
select A.* from A left join B on A.UnitID = B.UnitID WHERE B.[年]='2013'

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧