【问题标题】:MySQL Select week number within current monthMySQL选择当前月份内的周数
【发布时间】:2015-04-09 17:05:30
【问题描述】:

我有一张包含事件的表格,其中一些事件在一个月内的特定几周重复出现(例如,每个月的第一个星期三)。

如何选择以下?

表格

event  day         week
quiz   wednesday   1

伪代码是:

SELECT * FROM table WHERE week = weeknumberWithinCurrentMonth()

由于我们现在是 2 月的第三周,因此将从上述伪查询中获取 0 行。如果我们在 2 月的第 1 周,它会选择示例行。

【问题讨论】:

标签: mysql


【解决方案1】:

SELECT * FROM table WHERE week = FLOOR((DayOfMonth(NOW())-1)/7)+1

尽可能靠近。

【讨论】:

    【解决方案2】:

    这可能是您正在寻找的:

    http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_week

    SELECT WEEK(CURDATE()) - WEEK(DATE_FORMAT(NOW() , '%Y-%m-01')) + 1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-30
      • 2018-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-21
      • 2015-09-28
      相关资源
      最近更新 更多