产生原因还没有明白,先记录一下。
使用DATEDIFF函数,计算两个日期的时间差。在mybatis中,resultType 是map.在代码中,根据map的key取值的时候。
在mysql 5.5.39 中,得到的类型是Integer
在mysql 5.6.11 中,得到的类型是Long
目前解决方案是map取出的值,统一转化成string.在根据需要转化。产生原因目前还不清楚。先记录一下
问题2:
sql 中使用sum 和count 函数进行统计。mybatisfanhui map
结果得到了BigDecimal 和Long 两种类型。
改用jdbc连接,童谣得到两种类型。
查询mysql 的sum和count函数
The SUM() and AVG() functions return a DECIMAL value for exact-value arguments (integer or DECIMAL), and a DOUBLE value for approximate-value arguments (FLOAT or DOUBLE). (Before MySQL 5.0.3, SUM() and AVG() return DOUBLE for all numeric arguments.)
在mysql进行运算的时候,就已经确定了column的类型。问题一种所述如此。
具体mysql,Java,jdbc的对照可以参考
http://www.cnblogs.com/JemBai/archive/2009/08/20/1550683.html