gpt4 book ai didi

sql - 当前和上一个日期的累积列值

转载 作者:行者123 更新时间:2023-12-04 10:18:36 24 4
gpt4 key购买 nike

我有一个注册表,大约有 30 万条记录。我需要一个 SQL 语句来显示特定日期的注册总数?

select
count('x'),CONVERT(varchar(12),date_created,111)
from reg group by
cONVERT(varchar(12),date_created,111)
order by
CONVERT(varchar(12),date_created,111)

此查询的结果:
169      2011/03/24
3016 2011/03/25
2999 2011/03/26

期望的结果:
 2011/03/25  3016+169
2011/03/26 2999+3016+169

如何才能做到这一点?

最佳答案

目前您有 2 个选择:第一个是使用 vbence 建议的 join,第二个是子查询:

SELECT r1.date_created, (SELECT COUNT(*) FROM reg r2 
WHERE r2.date_created<=r1.date_created) AS total_num
FROM reg r1;

这两种方法生成类似的执行计划。

以后SQLServer实现时 ORDER BYOVER使用聚合函数,您将能够编写
SELECT date_created, 
COUNT(*) OVER(ORDER BY date_created) as total_num
FROM reg;

关于sql - 当前和上一个日期的累积列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5449937/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com