我有一个查询来汇总单列的数值:
*2016-11-24 11:13:02.613 ERROR 8316 --- [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause java.lang.NullPointerException: null
at com.tfb.dao.BusinessTripDAO.getKrajoweTripsDaysForEmployee(BusinessTripDAO.java:59) ~[classes/:na]*
只要所选用户有UE类别的商务旅行,它就可以正常工作。然后它正确地计算旅行天数。但是,如果没有UE类别的跳转,而不是零,我得到 NullPointerException 。我可以将此行放在try / catch中,但这将是一种解决方法。我想弄清楚为什么会在这种情况下抛出NPE。
s='2014-11-19 00:00:00.0000000'
print (datetime.datetime.strptime(s.strip()).[:26], '%Y-%m-%d %H:%M:%S.%f')).date()
答案 0 :(得分:1)
将您的选择语句更改为
"select coalesce(sum(number_of_days), 0) from business_trip where name = ? and surname = ? and type = ?"
这样,如果你得到null,它将被转换为0。