mysql - 双周团体约会

标签 mysql

我正在尝试每两周对我的平板电脑组中的小计求和。关于如何过滤最后两周间隔有很多答案,但到目前为止还没有关于如何正确进行分组的有效解决方案。

表列:order_date小计

我已经成功地每周进行分组,但不知道如何每两周进行分组

SELECT CONCAT(YEAR(order_date), '/', WEEK(order_date)) AS week_name, SUM(subtotal)
FROM m_orders

最佳答案

group by WEEK(order_date) DIV 2附加到您的查询中:

SELECT 
 CONCAT(YEAR(order_date), '/', WEEK(order_date) DIV 2) AS fortnight_number, 
 SUM(subtotal)
FROM m_orders
group by YEAR(order_date), WEEK(order_date) DIV 2

关于年初和年底存在一些问题,MySql 的 week 函数的不同参数决定了返回的范围(0-53 或 1-53)以及第一周的情况年份已经确定,但这是基本思路。

(根据业务需求,您可能需要week(order_date, 1)/2。第二个参数 1,指定周从星期一开始,范围为0-53,一年中的第一周是该年中有三天或更多天的第一周。当然,请与业务人员核实。)

编辑:将/更正为 DIV

关于mysql - 双周团体约会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46105644/

相关文章:

mysql - 选择两列之间的范围

php - 如何检查 while 循环中的最后一个条目并在 php 中的表中的最后一行之后插入行

php - 插入数据库时​​将单词更改为数字

php - 表单中的额外(隐藏)数据

mysql - 如何优化大型mysql表(股票数据)

mysql - 'connect by' 或 'WITH RECURSIVE' 是否可以在高度连接的大数据场景中使用?

mysql - k mysql 中的最近邻

php - 直接在 PHP CLI 和 MySQL 中运行时,数据库查询返回不同的结果

java - IntelliJ java.lang.ClassNotFoundException : com. mysql.jdbc.Driver - 连接到 XAMPP MySQL 数据库

mysql - Sql触发器的查询