select语句是一条左连接查询;连接的两张表都是200多万条数据。
直接执行sql语句查询时间只有几毫秒,但是放到java中使用PageHelper.startPage查询需要10几秒。
解决方案: 在mapper.xml中添加一个方法(如下)。queryList是查询方法的id,_COUNT为固定后缀。
<select id="queryList_COUNT" resultType="Long"> select count(1) from 左连接的主表 </select>
分析:把count左连接查询的语句单独执行需要耗费很长的时间,所以查询慢的原因应该是count。