temp 表结构(id,kind,number) id为自增字段. select id,
(select sum(number)
from temp t2 where t2.kind = t1.kind and t2.id < t1.id
) as number
from temp t1 想优化这条语句,请大侠们指导下.谢谢. 因为数据量很大时,不可能每条语句都去将前面的数据进行累加哦.这样效率很慢... 真心的谢谢大家...
(select sum(number)
from temp t2 where t2.kind = t1.kind and t2.id < t1.id
) as number
from temp t1 想优化这条语句,请大侠们指导下.谢谢. 因为数据量很大时,不可能每条语句都去将前面的数据进行累加哦.这样效率很慢... 真心的谢谢大家...
id kind number
1 a 10
2 a 15
3 b 10
4 a 20
5 b 5----->查询出结果(结果顺序可以乱,比如可以kind或者id分组等)
id kind number
1 a 0
2 a 10
3 b 0
4 a 25
5 b 10
使用分析函数来求连续累加值,然后再减去当前行自己的值。