题解 | #统计salary的累计和running_total#
统计salary的累计和running_total
http://www.nowcoder.com/practice/58824cd644ea47d7b2b670c506a159a6
法一:sum聚合窗口函数
select emp_no,salary,sum(salary)over(order by emp_no) running_total
from salaries where to_date='9999-01-01'
法二:
select emp_no,salary,(select sum(salary) from salaries s2 where s2.emp_no<=s1.emp_no and to_date='9999-01-01') running_total
from salaries s1 where to_date='9999-01-01'
法三:也可以用join+group by
select s1.emp_no,s1.salary,sum(s2.salary) running_total
from salaries s1 join salaries s2 on s1.emp_no>=s2.emp_no where s1.to_date='9999-01-01' and s2.to_date='9999-01-01'
group by s1.emp_no,s1.salary
SQL题解 文章被收录于专栏
主要是为自己做个笔记