You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

统计各服务每小时工单处理量的SQL查询问题

业务背景

当前运营应答服务系统工单来自多个不同服务渠道,需要统计员工在各服务渠道下每小时处理的工单数量。

现有情况

目前已编写初步SQL查询语句,可完成小时字段提取,但未实现分组取时段末值的逻辑,现有代码如下:

SELECT gfqueuecounter_counter,hora,gfqueue_desc  FROM (SELECT gfqueuecounter_time,gfqueue_desc, gfqueuecounter_counter , SUBSTRING(CONVERT(gfqueuecounter_time,TIME),1,2) as hora
FROM gfqueuecounter_v2 
WHERE gfqueuecounter_time > '2022-06-07 09:00:00' and gfqueuecounter_time < '2022-06-07 18:00:00') as t1;
字段说明
  • gfqueuecounter_counter:各服务工单的逐次递增计数器,每产生一张工单计数加1
  • gfqueue_desc:不同工单类型的标识字段
  • hora:子查询中通过CONVERT、SUBSTRING函数从gfqueuecounter_time字段提取的小时值,用于标识记录所属小时
具体需求

获取每个服务类型在每小时时段内的最后一条计数器记录,以此计算对应时段的工单处理量。

实现方案

核心逻辑:按服务类型+小时分组,取每组内计数器值最大的记录,即为对应小时时段的末值记录(计数器严格递增,最大值天然对应时段内最后一条工单)。

支持窗口函数的数据库版本(MySQL 8.0+、PostgreSQL等)

用ROW_NUMBER()窗口函数给分组内记录排序,取每组第一条即可,写法简洁执行效率高:

SELECT 
    gfqueuecounter_counter,
    hora,
    gfqueue_desc
FROM (
    SELECT 
        gfqueue_desc, 
        gfqueuecounter_counter,
        SUBSTRING(CONVERT(gfqueuecounter_time, TIME), 1, 2) AS hora,
        ROW_NUMBER() OVER (
            PARTITION BY gfqueue_desc, SUBSTRING(CONVERT(gfqueuecounter_time, TIME), 1, 2)
            ORDER BY gfqueuecounter_counter DESC
        ) AS rn
    FROM gfqueuecounter_v2 
    WHERE gfqueuecounter_time > '2022-06-07 09:00:00' 
      AND gfqueuecounter_time < '2022-06-07 18:00:00'
) AS t1
WHERE rn = 1;

低版本不支持窗口函数的场景

用分组聚合先找到每个分组的最大计数器值,再关联原表取对应记录:

SELECT 
    t1.gfqueuecounter_counter,
    t2.hora,
    t1.gfqueue_desc
FROM gfqueuecounter_v2 t1
INNER JOIN (
    SELECT 
        gfqueue_desc,
        SUBSTRING(CONVERT(gfqueuecounter_time, TIME), 1, 2) AS hora,
        MAX(gfqueuecounter_counter) AS max_counter
    FROM gfqueuecounter_v2
    WHERE gfqueuecounter_time > '2022-06-07 09:00:00' 
      AND gfqueuecounter_time < '2022-06-07 18:00:00'
    GROUP BY gfqueue_desc, SUBSTRING(CONVERT(gfqueuecounter_time, TIME), 1, 2)
) t2 
ON t1.gfqueue_desc = t2.gfqueue_desc 
AND t1.gfqueuecounter_counter = t2.max_counter;

内容的提问来源于stack exchange,提问作者Bernardo Lopes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.01 17:01:27