具体代码如下,由于最终返回的结果集当中每列都是sum()
具体语句结果为下
select sum(a),sum(b),sum(c) from
(select sum(),sum(),sum() from B where xxxxxx); 子查询当中没有结果集,但是外层的汇总对还是会有一条记录,记录当中的所有记录都是空.
用resultset的next()判断还是会有记录。用rs.get.....方法的时候会有空指针异常
有什么什么比较好的方法吗,除了手动去判断是否为空。
CallableStatement call = conn.prepareCall("{call VF_P_QUREY_PRO.vf_qurey_pro_sum(?,?,?,?)}");
//分别对应机构ID,起始日期,终止日期,返回游标。
call.setString(1,organId);
call.setString(2,beginDate);
call.setString(3,endDate);
call.registerOutParameter(4, OracleTypes.CURSOR);
call.registerOutParameter(4, OracleTypes.CURSOR);
call.execute();//查询结果集是否为空 true:表示有结果集,false:无结果集
ResultSet rs = (ResultSet)call.getObject(4);
while(rs.next()){
System.out.print(rs.getBigDecimal(1)+" ");
}
解决方案 »
- 请教,ORACLE联机定时差异化备份方法
- 求解 case when 问题 在线等~解决就上分!
- Linux下兩個數據庫如何相互訪問
- 请问ORACLE里面有没有跟SQL 事件探查器 差不多的工具呢
- 我用RMAN对DB做了0级备份、1级备份和2级备份,但不知因该如何利用他们进行恢复????
- 在ORACLE10g中用dbms_logmnr_d.build 分析日志文件时出错。求教各位大侠!!!!!!!!!!
- 各位大侠,请问我的 ManagementSever 这个服务起不来,应该怎么办
- 各位兄弟帮忙啊~~~
- 请问在oracle中查寻一个schema下所有表记录数的sql怎样写?
- 求解SQL语句优化最佳方案
- 哪位大侠可以将以下MS SQL转换成P/L SQL!!
- 通过dblink的查询会占用回滚段吗?
可以再最终的sql语句把null处理成零,这样就没有空指针了。
select nvl(sum(a),0),nvl(sum(b),0),nvl(sum(c),0) from
£¨select sum(),sum(),sum() from B where xxxxxx£©;
所有a is null出来就是null
可以修改下sql,
nvl(sum(a),0)