1

我需要过滤本周和下周的一些结果。但这周没有给我任何结果。

我有日期为“2013-10-25 12:00:00”和“2013-10-22 12:00:00”的记录。

date('W', time())在 php 中获得本周并WEEK(tdi.due_at)在 mysql 查询中使用。

date('W', time())返回 43,即当前周数。

WEEK(tdi.due_at)返回 42 为什么?

4

2 回答 2

1

MySQL WEEK()还有一个可选的 mode 参数,用于设置一年的第一周开始时的条件。

于 2013-10-25T10:31:13.433 回答
0

为什么不从 PHP 中减去 -1 date('W') - 1。或将 +1 添加到 MySQL WEEK(tdi.due_at) + 1

PHP 以 1 为索引,MySQL 以 0 开始索引,就像 JavaScript 一样。

于 2013-10-25T10:34:41.113 回答