日期:2014-05-19  浏览次数:20746 次

关于SSH+MYSQL遇到的一个问题,请求帮助
我的sql语句为 
SQL code

SELECT staff,AVG(IF((CompleteTime-ThirdDamageTime) IS NULL,86400,(CompleteTime-ThirdDamageTime))) as CT
FROM Report WHERE 1=1


使用session.createSQLQuery(wheresql); 就会报错java.sql.SQLException: Column '' not found.
如果使用session.createQuery(wheresql) 就直接出现空指针异常
我该怎么解决啊?

------解决方案--------------------
MySQL 的 AVG 方法在找不到匹配的结果时就会返回NULL,可能

(CompleteTime-ThirdDamageTime) IS NULL 这句有点问题

要么分开检查是否是NULL,要么给一个差值 CompleteTime-ThirdDamageTime = 0 作为判断