oracle 按天累计计算每人人数/天数
时间: 2023-08-29 16:03:16 浏览: 82
Oracle 按天累计计算每人人数/天数的方法如下:
首先,假设我们有一个名为"persons"的表,其中包含以下列:person_id(人员ID), date(日期)。
我们可以使用Oracle的聚合函数和窗口函数来实现这个需求。
首先,我们使用窗口函数ROW_NUMBER()为每个人员和日期组合分配一个唯一的序号。我们可以使用以下查询实现这一步骤:
```
SELECT person_id, date, ROW_NUMBER() OVER(PARTITION BY person_id, date ORDER BY person_id, date) as row_num
FROM persons
```
接下来,我们使用SUM()聚合函数来计算每人每天的累计人数。我们可以使用以下查询实现这一步骤:
```
SELECT person_id, date, SUM(row_num) OVER(PARTITION BY person_id ORDER BY date) as cumulative_count
FROM (
SELECT person_id, date, ROW_NUMBER() OVER(PARTITION BY person_id, date ORDER BY person_id, date) as row_num
FROM persons
)
ORDER BY person_id, date
```
以上查询将返回每个人员每天的累计人数。我们使用SUM()函数将分配给每个人员每天的序号进行求和,得到累计人数。
希望以上解答能够帮助到您!如果还有其他问题,请随时提问。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)