使用MYSQL从一年中给定的一周(从星期日开始)的所有帖子总数中进行选择

时间:2019-04-03 19:24:35

标签: mysql wordpress

我正在尝试从MYSQL输出数据表,该数据表显示在Wordpress网站上发布的所有帖子,总计本年的一年中的一周。

我想确保我的查询所计算的是从该年的第一个星期日开始的周数,以及从下一个星期日开始的每个连续周。

我已经设法完成了一个功能查询,但是我对MYSQL还是很陌生,我不确定语法以及如何修改它。

我知道YEARWEEK()允许选择一种模式,该模式将标识一周的开始日期,即SELECT YEARWEEK('2019-11-23',0)AS'Mode 0';

这听起来完全像是我想使用的东西,但是鉴于我当前的代码(或者如果我已经拥有的话),我不确定如何实现这一点。

{
    alternatives: [{
        confidence: 0.9835046,
        transcript: how old is the Brooklyn Bridge
    }]
}

此查询生成的每周总计与脱机跟踪相同数据略有不同。我怀疑这与一周的开始时间的计算方式有关。

1 个答案:

答案 0 :(得分:0)

我可能会发现一种确保周数从周日开始的方法。您可能想尝试使用WEEK(date,mode)。例如:

SUM(if ( (WEEK(p.post_date,0) =  1), 1, 0)) as Wk1, 
SUM(if ( (WEEK(p.post_date,0) =  2), 1, 0)) as Wk2,
SUM(if ( (WEEK(p.post_date,0) =  3), 1, 0)) as Wk3,

我已经从'2019-01-01'开始对多个日期进行了测试,它确实计入了从今年第一个星期日开始的一周。因此,如果post_date今年介于'2019-01-01'至'2019-01-05'之间,它将被标识为第0周,并且仅从'2019-01-06'开始才标识第1周(这是今年的第一个星期日)。有关WEEK()函数的更多说明,请参见此链接MySQL 'WEEK()' Function