MySQL:如何按日期每n天选择行

标签 mysql date

我需要通过 ISO datetime 字段获取每“n”(例如 180)天的所有行(注意:不仅是最近 180 天)。

例如,我需要选择 180 天、360 天等的每一行。

例如,如果我有一条日期为 2016-01-11 12:30:00 的记录,我将在 DATE() 时获取此记录是 2016-07-092017-01-052017-07-04 等。

最佳答案

使用DATEDIFF MySQL的功能

演示:http://rextester.com/AEIN10581

set @QUERY_DATE='2016-07-09';
SELECT * FROM `dates`
    WHERE DATEDIFF(`date`, @QUERY_DATE) % 180 = 0;

您可以使用 CURDATE() 代替 @QUERY_DATE,来表示当前日期。

关于MySQL:如何按日期每n天选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42853871/

相关文章:

php - codeigniter 以及在 where(array) 函数中使用多索引

PHP:如何为存储过程使用日期间隔?

javascript - 我如何获得 JavaScript 中两个日期之间的差异?

java - 在我的代码中,为什么 Java 日期或日历中的月份日期不同?

javascript - 如何使用 jQuery 在 MaterializeCSS 中设置日期

php - 为什么这个 PHP 日期比较的行为不像我预期的那样?

PHP 7 和学说 2.4.3 : Changing column charset from utf8 to utf8mb4

php - 构建要在 while 循环中外部使用的字符串

javascript - 当项目进入选择框时如何获取数据?

Pandas Lambda 函数格式月和日