1、表形式如下:
Year Salary
2000 1000
2001 2000
2002 3000
2003 4000
想得到如下形式的查询结果:
Year Salary
2000 1000
2001 3000
2002 6000
2003 10000
sql语句怎么写?
解答:(1)、字段和SUM()等一起使用时,必须把字段放在ORDER BY子句当中,不然会报错。
SELECT b.year, SUM(a.salary) AS salary FROM temp a, temp b WHERE a.year <= b.year GROUP BY b.year ORDER BY salary;
(2)、把SUM()放在子查询当中。
SELECT year,(SELECT SUM(salary) FROM temp WHERE year <= a.year) AS salary FROM temp a;
(3)、
SELECT year,sum(salary)over(ORDER BY year) FROM temp;