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

SQL Server Studio工作日工作时段特定工单类型计数问题求助

解决SQL Server中工作日工作时段工单统计的筛选问题

Hey Matt, 针对你遇到的问题,我来给你几个明确的方向,帮你排除不需要的数据,精准统计目标工单:

1. 先把核心筛选条件写准确

你提到的两个筛选条件(排除周末+工作时段),要注意时间字段的类型处理,这很可能是你没过滤掉无效数据的关键:

如果你的ArrTime是datetime/datetime2类型(包含日期+时间),直接用ArrTime BETWEEN '08:00:00' AND '16:30:00'会出问题——SQL Server会自动把字符串转成1900-01-01 08:00:00这类日期,和你的实际工单日期不匹配。正确的做法是提取时间部分来比较:

方法一:用DATEPART计算分钟数

WHERE
  -- 排除周末
  ArrivedDAY NOT IN ('Saturday', 'Sunday')
  -- 筛选08:00-16:30的时段:把小时转成分钟,统一计算
  AND (DATEPART(HOUR, ArrTime) * 60 + DATEPART(MINUTE, ArrTime)) BETWEEN 480 AND 990

(480=860,990=1660+30)

方法二:用CONVERT提取时间字符串

WHERE
  ArrivedDAY NOT IN ('Saturday', 'Sunday')
  -- 把时间转成HH:MM:SS格式的字符串再比较
  AND CONVERT(varchar(8), ArrTime, 108) BETWEEN '08:00:00' AND '16:30:00'

另外,如果ArrivedDAY的取值有大小写差异(比如sunday或Sat),可以用LOWER()统一转换避免遗漏:

AND LOWER(ArrivedDAY) NOT IN ('saturday', 'sunday')

2. 精准统计目标工单类型

既然你已经完成了计数部分,建议用CASE WHEN来分别统计各类工单,同时结合上面的筛选条件,确保只统计符合要求的数据:

假设你的工单类型字段是TicketType,No Access是状态字段Status,Follow On是事件摘要字段EventSummary,示例SQL如下:

SELECT
  -- 统计三类工单数量
  COUNT(CASE WHEN TicketType = 'appointed' THEN 1 END) AS Appointed_Total,
  COUNT(CASE WHEN TicketType = 'emergency' THEN 1 END) AS Emergency_Total,
  COUNT(CASE WHEN TicketType = 'surveyor' THEN 1 END) AS Surveyor_Total,
  -- 统计No Access和Follow On数量
  COUNT(CASE WHEN Status = 'No Access' THEN 1 END) AS NoAccess_Total,
  COUNT(CASE WHEN EventSummary = 'Follow On Event Summary' THEN 1 END) AS FollowOn_Total
FROM Your_Table_Name -- 替换成你的实际表名
WHERE
  LOWER(ArrivedDAY) NOT IN ('saturday', 'sunday')
  AND CONVERT(varchar(8), ArrTime, 108) BETWEEN '08:00:00' AND '16:30:00'

3. 排查无效数据残留的常见原因

如果还是有不需要的数据被统计,检查这几点:

  • 确认ArrivedDAY的取值范围:有没有其他表示周末的字符串(比如'Sat'/'Sun')?可以先跑SELECT DISTINCT ArrivedDAY FROM Your_Table_Name看看实际值。
  • 检查ArrTime是否有NULL值:如果有,CONVERT或DATEPART会返回NULL,导致这些记录被排除(如果需要包含NULL,要额外处理)。
  • 确认统计字段的匹配逻辑:比如No Access是不是确实存在于Status字段中,有没有拼写错误(比如'NoAccess'没有空格)?

如果还是搞不定,可以把你现有的SQL代码贴出来,我帮你再细化排查~

内容的提问来源于stack exchange,提问作者Matt Walmsley

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 16:57:33