select m.*, sum(l.notloss) as total_notloss, sum(l.mayloss) as total_mayloss, sum(l.isloss) as total_isloss, (sum(l.notloss) + sum(l.isloss) + sum(l.mayloss) ) as total_wbuser from pt_hourlog m left join pt_losslog l on m.`hour`=l.`hour` where 1 group by m.`hour` order by m.`hour` desc limit 0 , 30 ;
select m.hour, sum(l.notloss) as total_notloss, sum(l.mayloss) as total_mayloss, sum(l.isloss) as total_isloss, (sum(l.notloss) + sum(l.mayloss) + sum(l.isloss) ) as total_wbuser from pt_hourlog m left join pt_losslog l on m.`hour`=l.`hour` where 1 group by m.`hour` order by m.`hour` desc limit 0 , 30 ;这个分组后一次性都可以统计完的 不必担心
sum(l.notloss) as total_notloss,
sum(l.mayloss) as total_mayloss,
sum(l.isloss) as total_isloss,
(sum(l.notloss) + sum(l.isloss) + sum(l.mayloss) ) as total_wbuser
from pt_hourlog m
left join pt_losslog l on m.`hour`=l.`hour`
where 1
group by m.`hour`
order by m.`hour` desc
limit 0 , 30 ;
只能这样吗?那不太消耗了啊,因为 total_notloss 这些 total_开头的前面已经统计过一次了,再次使用(sum(l.notloss) + sum(l.isloss) + sum(l.mayloss) ) as total_wbuser 来统计那不太耗费资源了吗?
sum(l.notloss) as total_notloss,
sum(l.mayloss) as total_mayloss,
sum(l.isloss) as total_isloss,
(sum(l.notloss) + sum(l.mayloss) + sum(l.isloss) ) as total_wbuser
from pt_hourlog m
left join pt_losslog l on m.`hour`=l.`hour`
where 1
group by m.`hour`
order by m.`hour` desc
limit 0 , 30 ;这个分组后一次性都可以统计完的 不必担心