You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel中查询并展示数据表中票数最高的3条数据?

解决Laravel查询票数最高的3条数据问题

现有数据表

idnamesvoted
1John100
2Mike25
3Kathy200
4William186
5Jasmine60
6Sui57
7Chris43
8Stewie103
9Steve150
10Jennifer97

当前代码问题

你写的votes::all()->max('voted')->get()存在逻辑错误:all()会直接取出所有数据,max('voted')只返回最高票数的数值,此时再调用get()会抛出错误,无法获取完整的记录信息。

正确实现代码

要获取票数最高的3条数据,只需按票数降序排序后取前3条:

public function votesList(){
    $data = votes::orderByDesc('voted')->take(3)->get();
    return view('list', compact('data'));
}

代码说明

  • orderByDesc('voted'):将数据按voted字段从高到低排序
  • take(3):筛选出排序后的前3条记录
  • get():执行查询并返回包含完整记录的集合

执行后得到的结果

idnamesvoted
3Kathy200
4William186
9Steve150

内容的提问来源于stack exchange,提问作者NeedHalp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 09:50:26