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

SQL求助:如何计算2018年每位员工的总工时?

计算2018年每位员工工时总和的正确SQL查询

你的原查询存在两个关键问题:

  • 多余的distinct:group by PersonId已经会自动返回每个唯一员工的汇总结果,不需要额外添加distinct
  • 错误的分组字段:group by里包含了reghours,这会让数据库按「员工ID+单条工时记录值」的组合分组,最终得到的不是每个员工的总工时,而是同一员工下相同工时数值的分组汇总

修正后的查询语句:

select PersonId, SUM(reghours) as '2018' 
from TimeSheetsView
where LEFT(yearweek, 4) = '2018' 
group by PersonId

补充说明:如果yearweek是日期/日期时间类型字段,建议用更规范的年份提取方式——YEAR(yearweek) = 2018,这样能利用字段上可能存在的索引,提升查询效率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 03:05:28