iBastis 之count, sum操作

来源:互联网 发布:win10下载 知乎 编辑:程序博客网 时间:2024/06/16 06:41

一、count, sum 函数区别

sql里的count() 函数,无匹配的值时,返回的是0;而sum(), max()等函数,返回的是NULL。

执行sql验证如下:
执行 count() 函数:
count 函数

执行 sum() 函数:
sum 函数

二、有数据情况下,是否设置 resultClass的结果

iBatis里,queryForObject() 函数执行的sql未设置resultClass时,会返回一个空的对象。

queryForObject 方法文档

验证如下:
不带resultClass sql :
不带resultClass sql
输出为:
这里写图片描述

带resultClass sql :
带resultClass sql
输出为:
这里写图片描述

三、无数据情况下,是否设置 resultClass的结果

sql写法和上边一样。

结果分别为:
不设置 resultClass:
不设置 resultClass

设置 resultClass:
设置 resultClass

四、结论

count 或者 sum等操作,必须设置 resultClass,且看情况需判断执行 queryForObject 函数返回值是否为空。

五、扩展

ibatis 常用的几种查询方式,无数据情况下返回值:

  • queryForObject: 返回 null
  • queryForList: 返回 [], 即 空的 List, list.isEmpty() == true
  • queryForMap: 返回 {}, 即 空的 Map, map.isEmpty() == true

其中,queryForList 和 queryForMap 和未设置 resultClass 时,仍返回 [] 和 {}。

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 来大姨妈喝茶了怎么办 干柠檬片过期了怎么办 山地玫瑰根黑了怎么办 带18k的金过敏怎么办 18k钻戒断了怎么办 18k钻戒戒托变色怎么办 苹果七中间按键脱漆怎么办 苹果手机屏幕边缘掉漆了怎么办 十八k白金变色了怎么办 手机后面掉漆了怎么办 玫瑰金戒指刮花了怎么办 玫瑰金手镯刮花了怎么办 玫瑰金链子断了怎么办 dw玫瑰金掉色了怎么办 6s玫瑰金氧化了怎么办 书本湿的很严重怎么办 除湿盒的水满了怎么办 书被水泡变黄了怎么办 文件纸被弄皱了怎么办 纸的一角皱了怎么办 裤子被雨水打湿变色了怎么办 书本上粘了有油怎么办 手被水泡了皱了怎么办 水泡破了感染了怎么办 夏天腋下出汗会弄湿衣服怎么办 夏天腋下出汗多弄湿衣服怎么办 上眼皮干燥起皮怎么办 怀孕下面湿又痒怎么办 内裤穿久了有异味怎么办 刨腹产私处捂烂了怎么办 猫咬手指出血了怎么办 老有白带涌出来怎么办 耳朵里塞了珠子怎么办 树脂发光字烧了怎么办 马蹄莲长得太高怎么办 百合球的芽断了怎么办 种的百合开败怎么办 盆栽百合花开完之后怎么办 土养百合花谢了怎么办 多肉叶子不饱满怎么办 冬天富贵竹叶子发黄怎么办水养