Closed bakerchen closed 7 years ago
1、有两张表tableA, tableB;是一对多的关系 2、tableB里的linked_id外键关联到tableA的id 3、mybatis mapper xml文件里, A用collection来获取相关联B的arraylist信息
现在的问题是:这种情况下,pagehelper返回pageinfo中total数量是包含对应的B表的信息总数, 有没有办法让total数只返回table A的记录总数。
例如:tableA中有一条记录id=1, tableB中有三条记录的linked_id是关联到tableA中的同一条记录id=1,这种情况下pagehelper返回的pageinfo.total = 3; 我希望只返回tableA的记录总数1
我的sql 如下: select ta., tb. from tableA ta left join tableB tb on ta.id = tb.linked_id;
我看日志打印出来的是: select count(0) from tableA ta left join tableB tb on ta.id=tb.linked_id
这种由于一对多会折叠结果导致无法正确分页,需要手动对主表进行分页。
好的,谢谢
1、有两张表tableA, tableB;是一对多的关系 2、tableB里的linked_id外键关联到tableA的id 3、mybatis mapper xml文件里, A用collection来获取相关联B的arraylist信息
现在的问题是:这种情况下,pagehelper返回pageinfo中total数量是包含对应的B表的信息总数, 有没有办法让total数只返回table A的记录总数。
例如:tableA中有一条记录id=1, tableB中有三条记录的linked_id是关联到tableA中的同一条记录id=1,这种情况下pagehelper返回的pageinfo.total = 3; 我希望只返回tableA的记录总数1
我的sql 如下: select ta., tb.
from tableA ta left join tableB tb on ta.id = tb.linked_id;
我看日志打印出来的是: select count(0) from tableA ta left join tableB tb on ta.id=tb.linked_id