使用开始日期每周返回结果PHP

时间:2018-07-31 15:08:25

标签: php mysql week-number

我正在尝试通过PHP来记录SQL数据,并每周记录案例类型,如下所示:

Week 1 | Date From | Volume
Week 2 | Date From | Volume
Week 3 | Date From | Volume

等等...而不必每周手动进行。我设置了周号变量,因为业务年度从7月开始,所以Week 1是7月的第一周。理想情况下,我想用公司的几周时间,但会在正常年份开始时定下来。我从这里开始:

    SELECT YEARWEEK(date) as weekNum, MIN(sr_mob.`date`) as start_date, 
    count(*) as numRecords 
    FROM sr_mob
    WHERE outcome='Escalated'
    GROUP BY YEARWEEK(date)

这给了我返回数据,但是start_date随该周的第一次输入时间而变化。

有什么方法可以在PHP中定义一个星期,然后查询该表(其中不包含星期数)以获取所需的信息吗?还是听起来我每周必须手动请求...

我可以说一个查询:
$Week1 ($week1=20180731-7;)

我想我正在寻找的是使用for each变量来完成while$week的一种方法,而不必写出52个变量(如果有道理)。

1 个答案:

答案 0 :(得分:0)

使用来自https://stackoverflow.com/a/30373395/2397717

的参考
SELECT 
    YEARWEEK(date) as weekNum, 
    STR_TO_DATE(CONCAT(YEARWEEK(date),' Monday'), '%X%V %W') as start_date, 
    count(*) as numRecords 
FROM sr_mob 
WHERE outcome='Escalated' 
GROUP BY YEARWEEK(date)