【发布时间】:2012-11-15 20:36:15
【问题描述】:
我没有找到任何关于 MySQL 的示例 - 它们都非常复杂。
我如何SELECT每月的第一个星期日?
【问题讨论】:
-
关于 SO 的更多信息:stackoverflow.com/questions/3317980/…
我没有找到任何关于 MySQL 的示例 - 它们都非常复杂。
我如何SELECT每月的第一个星期日?
【问题讨论】:
所以选择当月的第一天:2012-01-01(或您想要的任何月份和年份)。
获取日期的工作日索引。这里的索引是从 0 到 6。
从 6 中减去该索引,您将得到在日期为星期日之前需要添加多少天。
将该天数添加到所选日期。
SELECT DATE_ADD("2012-01-01 10:00:00", INTERVAL (6 - WEEKDAY("2012-01-01 10:00:00")) DAY);
或者:
SELECT DATE_ADD("2012-01-01", INTERVAL (6 - WEEKDAY("2012-01-01")) DAY);
【讨论】:
所以选择当月的第一天:2021-08-01(或任何你想要的月份和年份)。
SELECT ADDDATE('2021-08-01', MOD((8-DAYOFWEEK('2021-08-01')),7))
【讨论】: