gpt4 book ai didi

java - 在mysql中使用TIMEDIFF获取两个时间之间的差异时出现非法小时值错误

转载 作者:行者123 更新时间:2023-11-29 20:35:18 26 4
gpt4 key购买 nike

我正在使用 mysql 和 Java。当我在mysql中使用TIMEDIFF执行查询来获取两次时间之间的差异时,它给出的结果为'40:23:12'。但是当我在 java 中使用该查询时,出现异常错误:

illegal hour value '40'

SELECT TIMEDIFF(NOW(),last_act_time) FROM user_activity_log WHERE id=1;

有什么解决办法吗?

最佳答案

据我了解,这是 MySql 版本 5.1.6 中的一个错误。

引用号:https://bugs.mysql.com/bug.php?id=36051

要解决此问题,应在执行查询时将结果转换为字符串。这可以通过以下方式来实现。

SELECT concat('',TIMEDIFF(NOW(),last_act_time)) FROM user_activity_log WHERE id=1;

concat 会将其变成字符串,以便您可以将其作为字符串处理。

SELECT CAST(TIMEDIFF(NOW(),last_act_time) AS CHAR) FROM user_activity_log WHERE id=1;

按照@eggyal的建议

关于java - 在mysql中使用TIMEDIFF获取两个时间之间的差异时出现非法小时值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38823072/

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