网上有一些人是通过sql语句来实现的,我是在java层面实现的:
思路就是从0至总记录数-10这个范围取一个起始位置,然后再从这个起始位置取10条数据。
// 总记录数
int count = answerService.count();
// 随机数起始位置
int randomCount =(int) (Math.random()*count);
// 保证能展示10个数据
if (randomCount > count-10) {
randomCount = count-10;
}
QueryWrapper wrapper = new QueryWrapper<>();
wrapper.orderByDesc("id");
wrapper.last("limit "+String.valueOf(randomCount)+", 10");
List randomList = answerService.list(wrapper);



