gpt4 book ai didi

php - 过去 x 个月的排名查询

转载 作者:行者123 更新时间:2023-11-29 19:05:43 28 4
gpt4 key购买 nike

我想从我的 MySQL 服务器获取过去 x 个月的所有记录。例如使用 2 个月(不是过去 2 个月,比如过去 60 天,而是过去整个月等等。如果实际月份是 4 月,我想要 2 月和 3 月的所有记录)。我尝试了一些查询,最后一个是

SELECT id FROM ranking WHERE (end_date BETWEEN DATE_FORMAT(NOW(), '%Y-%m-01') AND DATE_FORMAT(LAST_DAY(NOW() - INTERVAL 2 MONTH), '%Y-%m-%d'))

“end_date”是我的日期列,它是日期列“2017-04-07”。

上面的查询什么也没返回,我无法弄清楚错误在哪里。

最佳答案

试试这个:

SELECT id
FROM ranking
WHERE end_date BETWEEN
DATE_ADD(LAST_DAY(DATE_SUB(NOW(), INTERVAL 3 MONTH)) INTERVAL 1 DAY)
AND LAST_DAY(DATE_SUB(NOW(), INTERVAL 1 MONTH));

它计算日期如下:

  • 对于范围内的开始日期,它会从当前日期减去 3 个月,获取该月的最后一天,并在其中添加一天以获得下个月的第一天(在我们的示例中为 2 月 1 日)
  • 对于结束日期,它从当前日期减去一个月并获取该月的最后一天(在我们的示例中为 3 月 31 日)

关于php - 过去 x 个月的排名查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43530513/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com