Hibernate执行原生SQL语句中函数出错的问题

用hibernate中的SQLQuery来执行原生SQL语句,如果语句中使用了SUM等等sql的函数一查询就会报错,提示找不到列''。
解决办法:取别名
SELECT emp.name,SUM(ld.amount) AS e FROM loandocument AS ld, employee AS emp WHERE ld.employee_id=emp.id AND emp.code LIKE '00010002%' GROUP BY ld.employee_id

SUM(ld.amount) AS e,在查询的时候处理SQLQuery query = session.createSQLQuery(sql).addScalar("e",Hibernate.Float);
这样查询就OK了

你可能感兴趣的:(sql,Hibernate)