获取直到前一个日期的待处理票积压计数
Posted
技术标签:
【中文标题】获取直到前一个日期的待处理票积压计数【英文标题】:Get Pending tickets backlog count until previous date 【发布时间】:2021-04-21 16:15:59 【问题描述】:我有这样的桌子
Ticket Date |Total Tickets Created | Pending Tickets
------------------------------------------------------
01-04-2021 |5000 | 200
02-04-2021 |2000 | 100
03-04-2021 |3000 | 300
select t.created_date,t.source,t.ticket_type,
count(*) as Total_Tickets_Created,
sum(case when tch.before='Pending Credential' then 1 else 0 end) as Pending_Tickets,
from r4e_mongo.mongo_repbiz_tickets t
join r4e_mongo.mongo_repbiz_ticket_changelog tch on t.id=cast(tch.ticket_id as string)
我想在前一天获得待处理的票证积压,如下所示,以便在谷歌数据工作室中使用日期过滤器创建报告。
Ticket Date |Total Tickets Created | Pending Tickets | Pending Tickets Backlog
---------------------------------------------------------------------------------
01-04-2021 |5000 | 200 | 1000
02-04-2021 |2000 | 100 | 1100 --(1000+100)
03-04-2021 |3000 | 300 | 1400 --(1100+300)
例如...我在报告中选择了 10 月 15 日的日期...它应该显示到 10 月 14 日的待处理票积压计数
【问题讨论】:
【参考方案1】:试试sum
作为窗口函数:
with mytable as (
select date '2021-04-01' as ticket_date, 5000 as total, 200 as pending union all
select date '2021-04-02', 2000, 100 union all
select date '2021-04-03', 3000, 300
)
select
*,
sum(pending) over (order by ticket_date) as backlog
from mytable
【讨论】:
查询有效,但如果我选择 14 日,它会显示 10 月 14 日和 15 日的数据,我是否必须更改时区? 数据洞察报告配置可能存在一些问题以上是关于获取直到前一个日期的待处理票积压计数的主要内容,如果未能解决你的问题,请参考以下文章