【发布时间】:2013-07-05 13:15:12
【问题描述】:
当我运行查询时,我得到的差异是“-00:05:00”。
我在尝试通过 java 检索此值时遇到此异常
java.sql.SQLException:java.sql.SQLException 在 com.mysql.jdbc.ResultSet.getTimeFromString(ResultSet.java:6111) 在 com.mysql.jdbc.ResultSet.getStringInternal(ResultSet.java:2137) 在 com.mysql.jdbc.ResultSet.getString(ResultSet.java:2076) 在 com.mysql.jdbc.ResultSet.getString(ResultSet.java:2194)
有没有办法将时差转换为字符串,如果它是负数,我可以通过 java 检索它。
select TIMEDIFF(STR_TO_DATE(std,"%H:%i"),STR_TO_DATE(SUBSTRING(deptime,(INSTR(deptime,":")-2)),"%H:%i")) as dep_diff from table
试图用java作为检索
rs.getString("dep_diff");
问题是我正在获取两个日期时间字段的差异并将差异作为 dep_diff,我无法通过 mysql 查询将其转换为字符串。
【问题讨论】:
-
请完整的堆栈跟踪
-
还有一些查询代码可能对我们很有帮助。
-
数据库中的基础列数据类型是什么。 ++ 显示实际查询。
-
为什么你的数据库中有日期作为字符串?它们应该是日期或时间戳。