大多数都会问,前几行数据汇总,后几行数据汇总。我想问的是最后几行数据的和不大于30
说下思路。先给每行数据从后往前编号(1...n)字段别名为num,然后再跟进行自关联关联条件为t1.num>=t2.num,接着再根据t1.num进行分组取sum(t2.数据字段)小于30的t1.num,可通过group by t1.num having sum(t2.数据字段)<30过滤。再取最大的t1.num即为结果
有个OLAP函数,叫移动SUM, sum(X) over( order by XXX) 你可以看看。
至于最后几行?? 你反向排序,就是前几行了。