查询语句的问题???急急急急急急!!!!

上官云峰 2005-01-25 05:49:02
a结构a1,a2,a3
b结构b1,b2,b3,b4,b5
我的sql语句(a记录为5条,b记录为2条)
select
a.a1,
sum(case when b.b2=1 then b.b3 else 0 end)
sum(case when b.b2=1 then b.b4 else 0 end )
from
a left join b on (a.a1=b.b1)
where
b.b5=100
group by
a.a1
问:
因为有条件所以得不出5条记录,但是我必须要得出5条记录,请问这样得sql怎么写
...全文
71 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lishengyu 2005-01-25
  • 打赏
  • 举报
回复
select
a.a1,
sum(case when b.b2=1 then b.b3 else 0 end)
sum(case when b.b2=1 then b.b4 else 0 end )
from
a left join b on a.a1=b.b1 and b.b5=100 ----这里就可以了
group by
a.a1

lishengyu 2005-01-25
  • 打赏
  • 举报
回复
select
a.a1,
sum(case when b.b2=1 then b.b3 else 0 end)
sum(case when b.b2=1 then b.b4 else 0 end )
from
a left join b on a.a1=b.b1 and b.b5=100
group by
a.a1
xluzhong 2005-01-25
  • 打赏
  • 举报
回复
select
a.a1,
sum(case when t.b2=1 then b.b3 else 0 end) as a2,
sum(case when t.b2=1 then b.b4 else 0 end) as a3
from a
left join (select * from b where b5=100) t
on a.a1=t.b1
group by a.a1
xluzhong 2005-01-25
  • 打赏
  • 举报
回复
select
a.a1,
sum(case when b.b2=1 then b.b3 else 0 end) as a2,
sum(case when b.b2=1 then b.b4 else 0 end) as a3
from a
left join (select * from b where b5=100) t
on a.a1=t.b1
group by a.a1
CatchWind 2005-01-25
  • 打赏
  • 举报
回复
到SQL SERVER版,有高手在
daijingjie2002 2005-01-25
  • 打赏
  • 举报
回复
不好意思以上发错
select a.a1,ww.a2,ww.a3 from a left (select
a.a1,
sum(case when b.b2=1 then b.b3 else 0 end) as a2
sum(case when b.b2=1 then b.b4 else 0 end ) as a3
from
a left join b on (a.a1=b.b1)
where
b.b5=100) as ww on a.a1=ww.a1
daijingjie2002 2005-01-25
  • 打赏
  • 举报
回复
select
a.a1,
sum(case when b.b2=1 then b.b3 else 0 end)
sum(case when b.b2=1 then b.b4 else 0 end )
from
a left join b on (a.a1=b.b1)
where
b.b5=100

34,576

社区成员

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

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