如何按周指定星期结束日?

时间:2010-09-21 04:30:02

标签: sql mysql

我需要运行按周分组的报告。这可以通过使用group by week(date)来完成,但客户希望设置标记周末的星期几。所以它可以是星期二,星期三等。如何通过查询将其作为一组进行处理?

datetime列类型是unix时间戳。

1 个答案:

答案 0 :(得分:4)

WEEK()函数使用可选的第二个参数来指定一周​​的开始:

  

此函数返回日期的周数。 WEEK()的双参数形式使您能够指定周是在星期日或星期一开始,以及返回值是否应该在0到53或1到53之间。

但是,它只能设置为星期日或星期一。


更新:根据以下评论,您可能需要考虑根据评论中的建议,根据WEEK(DATE_ADD(date INTERVAL x DAY))向表中添加新列以充当分组字段。您可能希望创建triggers以在更新date字段时以及插入新行时自动生成此值。然后,您可以根据需要在此新字段上创建可用的索引。