问题遇到的现象和发生背景
我的场景是很多条件查询,其中有一个条件是是否筛选A字段长度大于10的
我的解答思路和尝试过的方法
我有两个想法:1.我的分页查询和条件构造都是用mybatis plus完成的,计算“内容”字段content长度的话,就只能拼接sql语句:where charlength(content)> 10,但是这样就导致了整个构造的条件最终不走索引,于是我就想到了第二个方法
2.先分页查询,然后再对分页查询出来的数据进行筛选,filter(a->a.getContent.length()>10)collect(Collectors.toList()),但是这样就有一个问题,就比如说,分页查询出来后,当前页是第一页,分页的size是10,筛选掉content小于10的有8条数据,那最终第一页就只有2条数据了
所以我想请教一下,有没有分页查询后→筛选数据后-→再按size分页/或者说,让筛选后的数据往前挤