gpt4 book ai didi

mysql - STR_TO_DATE() 的意外行为

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

以下内容从我的数据库返回一堆行:

USE test;
SELECT * FROM aaaa
WHERE dddd BETWEEN (NOW() - INTERVAL 42 DAY) AND (NOW() + INTERVAL 42 DAY)

但由于我不明白的原因,以下查询没有返回任何内容:

USE test;
SELECT * FROM aaaa
WHERE dddd BETWEEN (STR_TO_DATE('2014/6/6', '%Y,%m,%d') - INTERVAL 42 DAY) AND (STR_TO_DATE('2014/6/6', '%Y,%m,%d') + INTERVAL 42 DAY)

它不应该返回相似数量的行吗?它是同一天,那么为什么当我将其转换为日期时间时,它不返回任何内容?我没有收到任何错误。

最佳答案

您传递的是 / 分隔的日期,但告诉 MySQL 它是 , 分隔的。由于字符串中没有 ,,因此该格式不适用,最终会得到无效的日期。

尝试

STR_TO_DATE('2014/6/6', '%Y/%m/%d')

相反...

“无效 - 42 天 = 无效”,而不是 42 天前的内容。

关于mysql - STR_TO_DATE() 的意外行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24088131/

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