获取直到前一个日期的待处理票积压计数

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 日的数据,我是否必须更改时区? 数据洞察报告配置可能存在一些问题

以上是关于获取直到前一个日期的待处理票积压计数的主要内容,如果未能解决你的问题,请参考以下文章

获取特定用户的待处理任务数

对 Firebase 的待处理请求的可能原因是啥?

如何检查 PostgreSQL 事务中的待处理操作

多个意图打开错误活动的待处理意图

Android - 带有标志的待处理意图

Android 应用小部件实例发送相同的待处理意图