场景: 查询数据库限制条数时
mysql上的limit使用
QueryWrapper needSyn = new QueryWrapper();
needSyn.ge("ModifyDate",lmtSynRec.getLatestDate());
needSyn.last("limit 200");
List<CusCarInfo> needData = cusCarInfoMapper.selectList(needSyn);
如果是oracle则可以用apply
needSyn.apply("rownum < {0}" , 200);
如果是sqlserver
建议自己写sql查询语句
<select id="getSynList" resultType="com.xmeport.project.model.entity.CusCarInfo">
select top ${top} * from CUS_CAR_INFO t where t.ModifyDate > cast(#{latestDate} as datetime) orderBy
t.ModifyDate asc
</select>
List<CusCarInfo> getSynList(int top, Date latestDate);
或者使用QueryWrapper的select
QueryWrapper<CusCarInfo> wrapper = new QueryWrapper();
wrapper.select("top 200 *");
return this.list(wrapper);
以上就是根据最新时间查询top条数据
传入的字段是时间类型,就用#{} 占位符接收。如果是具体的一个数字或字符可以用 ${ }来接收。
参考: