有意思的SQL(四)

1、需求

有如下表

需求是按照一定规则对id进行分组
需求规则:以ID从小到大依次分组。当累计num字段合计>=1000时就新成立一个组,剩下的单独成一组

按照需求分组该这样

id = 1 num = 1023已超过1000 自己成一组
id = 2,3,4,5,6 合计为 1174 所以id = 2,3,4,5,6 成为一组
id = 7,8,9,10 合计为1035 D成一组
id =11 只剩下它了,也成一组。

2、构造测试数据

drop table t; create table t(id int,num int); insert into t values (1,1023),(2,310),(3,276),(4,349),(5,45),(6,194),(7,408),(8,164),(9,338),(10,125),(11,333); select * from t;