Mybatis——xml文件映射sql返回结果为null或者一次查询出现多个结果问题

文章目录


问题

使用mybatis的xml映射sql查询时,如果查询结果没有数据,就返回为空,不会生成对象(正常现象是无论查询结果如何,都会返回生成一个对象),如果模糊查询有数据,就会报错,错误:一个查询出现两个结果。

原因

select里全是嵌套select,没有一个字段是最外层的select的。如下

select (select  count(*) from user where id like concat(#{name},'%') as users 
from user where id like concat(#{name},'%') 

解决

删去最外层的from和where即可,也可以暴露一个字段在最外层。


版权声明:本文为student_hwj原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。