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

MariaDB如何查询两周前周五起连续7天的staff列统计数据

两周前周五起连续7天staff列计数统计方案

核心实现逻辑

  • 第一步先计算时间区间边界:先定位到两周前的周五零点作为起始时间,取起始时间往后7天的完整区间作为统计范围
  • 第二步按你需要的时段维度(按天/按小时等)分组,统计对应分组下staff列的计数

MySQL语法实现代码

-- 定义统计区间起始:两周前的周五零点
SET @stat_start = DATE_SUB(
  DATE_SUB(CURDATE(), INTERVAL WEEKDAY(CURDATE()) + 3 DAY),
  INTERVAL 2 WEEK
);
-- 定义统计区间结束:起始时间往后推7天,用开区间避免时间戳边界误差
SET @stat_end = DATE_ADD(@stat_start, INTERVAL 7 DAY);

-- 统计查询,可根据实际需求调整分组维度
SELECT
  DATE(created_at) AS 统计日期,
  -- 如需去重统计staff可替换为 COUNT(DISTINCT staff)
  COUNT(staff) AS staff数量
FROM
  -- 替换为你实际的表名
  work_records
WHERE
  created_at >= @stat_start
  AND created_at < @stat_end
-- 分组维度和SELECT中的时间维度保持一致即可
GROUP BY 统计日期
ORDER BY 统计日期;

其他数据库方言适配说明:

  • PostgreSQL:将CURDATE()替换为CURRENT_DATE,WEEKDAY函数替换为EXTRACT(DOW FROM CURRENT_DATE)做对应换算即可
  • SQL Server:对应使用GETDATE()、DATEPART函数调整时间计算逻辑即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 21:24:06