可以使用 Mybatis-Plus 提供的 QueryWrapper 类,结合 Oracle 的 rownum 来实现获取排序后前5名的数据。

示例代码如下:

QueryWrapper<Entity> queryWrapper = new QueryWrapper<>();
queryWrapper.orderByDesc("column_name");  // 按照列名 column_name 倒序排序
queryWrapper.last("where rownum <= 5");  // 取前5条数据
List<Entity> list = entityMapper.selectList(queryWrapper);

其中,Entity 是对应数据库表的实体类,entityMapper 是 Mybatis-Plus 自动生成的 Mapper 接口。

需要注意的是,Oracle 的 rownum 是在数据读取之后才进行计算的,因此需要使用 last 方法将条件拼接到 SQL 语句的末尾,否则会出现错误的结果。

mybatisplus 中 读取oracle 获取排序后前5名的数据

原文地址: https://www.cveoy.top/t/topic/bnui 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录