为了账号安全,请及时绑定邮箱和手机立即绑定

list结果中包含了一个属性为null的bean对象?

list结果中包含了一个属性为null的bean对象?

SSM
翻阅古今 2019-02-21 19:15:54
(mybatis)直接执行sql结果为空,但是session.selectList出的list结果中包含了一个属性为null的bean对象这是dao层的代码这是debug结果,在数据库端直接执行sql,没有一条记录怎么回事呢?sql中用到了GROUP_CONCAT这个函数 
查看完整描述

3 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

今天碰巧遇到这个问题了,原因是关联表查询的问题,第一个表关联查的时候对应的关联表中的记录有多条的情况,这时候第一个表有记录但是关联的时候就没有合适的值(根据你要查的列而定);比如c left join d 这个时候要是c中的一条记录对应d中的可能有多条记录,而你要查的列又都是d中的字段,出来的就是all element is null 但是size=1;
解决办法:1.将你获取的list去除null元素;
2.查询的时候加d的判断条件,比如d.id is not null

查看完整回答
反对 回复 2019-03-26
?
拉丁的传说

TA贡献1789条经验 获得超8个赞

检查下group by 语句,我碰到这种情况,是mysql select语句中用了max函数,但没有用group by,查询结果本应该为空,但返回的list的size为1,字段全为null

查看完整回答
反对 回复 2019-03-26
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

sql语句贴出来,部分函数会影响数据,你可以看到有个orderId=0,表示执行你的sql在数据库里面能查到数据,只不过不是正常的结果。

查看完整回答
反对 回复 2019-03-26
  • 3 回答
  • 0 关注
  • 1671 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信