34,592
社区成员
发帖
与我相关
我的任务
分享
select sum(Length) as length_total1,time
from T_union20100908 where Class=1 and Speed<=20 group by time
select sum(Length) as length_total1,time
from T_union20100908 where Class=1 and Speed>20 and Speed<=35 group by time
select sum(Length) as length_total1,time
from T_union20100908 where Class=1 and Speed>35 and Speed<=50 group by time
select sum(Length) as length_total1,time
from T_union20100908 where Class=1 and Speed>50 and Speed<=65 group by time
select sum(Length) as length_total1,time
from T_union20100908 where Class=1 and Speed>65 group by time
select time, sum(...), 0,0,0 from ... where ... group by ...
union all select time, 0,sum(...), 0,0 from ... where ... group by ...
union all select time, 0,0,sum(...), 0 from ... where ... group by ...
union all select time, 0,0,0,sum(...) from ... where ... group by ...
select time,
length_total1=sum(case when Speed<=20 then Length else 0 end),
length_total2=sum(case when Speed>20 and Speed<=35 then Length else 0 end),
length_total3=sum(case when Speed>35 and Speed<=50 then Length else 0 end),
length_total4=sum(case when Speed>50 and Speed<=65 then Length else 0 end),
length_total5=sum(case when Speed>65 then Length else 0 end)
from tb
where class=1
group by time
select [time],
sum(case when Class=1 and Speed<=20 then length else 0 end) a,
sum(case when Class=1 and Speed>20 and Speed<=35 then length else 0 end) b,
sum(case when Class=1 and Speed>35 and Speed<=50 then length else 0 end) c,
sum(case when Class=1 and Speed>50 and Speed<=65 then length else 0 end) d,
sum(case when Class=1 and Speed>65 then length else 0 end) e
from T_union20100908
group by [time]