gpt4 book ai didi

mysql - 使用 MYSQL 从星期日开始的一年中给定一周内发布的所有帖子的总和中进行选择

转载 作者:行者123 更新时间:2023-11-30 21:32:27 24 4
gpt4 key购买 nike

我正在尝试从 MYSQL 输出一个数据表,该表显示在 Wordpress 网站上发表的所有帖子,按当年的一周汇总。

我想确保我的查询从一年中的第一个星期日开始计算周数,并从下一个星期日开始计算每个连续的星期。

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

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

这听起来正是我想要使用的,但我不确定如何根据我当前的代码(或者如果我已经有)实现它。

SUM(if ( (WEEKOFYEAR(p.post_date) =  1), 1, 0)) as Wk1, 
SUM(if ( (WEEKOFYEAR(p.post_date) = 2), 1, 0)) as Wk2,
SUM(if ( (WEEKOFYEAR(p.post_date) = 3), 1, 0)) as Wk3,
(this repeats for each week)

此查询生成的每周总计与同一数据的离线跟踪略有不同。我怀疑这与如何计算一周的开始有关。

最佳答案

我可能会发现一种方法来确保周计数从星期日开始。您可能想尝试使用 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

关于mysql - 使用 MYSQL 从星期日开始的一年中给定一周内发布的所有帖子的总和中进行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55502841/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com