gpt4 book ai didi

MYSQL DATE_SUB 在 FEB 中无法正常工作

转载 作者:行者123 更新时间:2023-11-30 23:23:11 25 4
gpt4 key购买 nike

我写了这个查询,它工作正常,除了在二月份!出于某种原因,因为 FEB 有 28 天,通过使用 INTERVAL 1 MONTH 函数它也读回 JAN。并且它应该只从 FEB 开始读取到 FEB 结束!

SELECT SUM(IF((`date` BETWEEN DATE_SUB('2013-02-28', INTERVAL 1 MONTH) AND '2013-02-28'), earnings, "null")) AS Rev0 
FROM table

最佳答案

给定任何日期,您可以使用它来获取该月的第一天:

DATE_SUB('2013-02-28', INTERVAL DAY('2013-02-28')-1 DAY)

或者还有这个:

CAST(DATE_FORMAT('2013-02-28' ,'%Y-%m-01') as DATE)

最后一天,已经定义了一个函数:

LAST_DAY('2013-02-28')

您的查询将变为:

SELECT
SUM(IF((`date` BETWEEN DATE_SUB('2013-02-28', INTERVAL DAY('2013-02-28')-1 DAY)
AND LAST_DAY('2013-02-28')), earnings, "null")) AS Rev0
FROM table

关于MYSQL DATE_SUB 在 FEB 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14641695/

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