当我运行查询时,我得到差异为'-00:05:00'。
尝试通过java
检索此值时,我收到此异常java.sql.SQLException:java.sql.SQLException at com.mysql.jdbc.ResultSet.getTimeFromString(ResultSet.java:6111)at at com.mysql.jdbc.ResultSet.getStringInternal(ResultSet.java:2137)at at com.mysql.jdbc.ResultSet.getString(ResultSet.java:2076)at 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查询转换为字符串。
答案 0 :(得分:0)
显然,您正在尝试检索持续时间(这是查看两个时刻之间时差的另一种方式),就好像它是一个相对于Unix时代的时间点。
而是检索字符串并使用您自己的代码处理它,或者使用了解持续时间概念的JodaTime。