【发布时间】:2021-04-12 03:09:15
【问题描述】:
如何获取每个特定 user_id 的最新/最新数据。
提交表格
| id | user_id | status | created_at | updated_at |
|---|---|---|---|---|
| 1 | 3 | redo | somedatetime | somedatetime => dont want this
|
| 2 | 3 | redo | somedatetime | somedatetime |
| 3 | 4 | redo | somedatetime | somedatetime |
| 4 | 5 | redo | somedatetime | somedatetime |
ID 2 不是冗余。我正在跟踪记录。我需要获取 id 2,3,4。我试过使用
Submission::where('status','redo')->distinct('user_id')->get();
但它返回所有值
更新
这里是表的真实结构供参考
如您所见,user_id 78 有 2 个重做,即 89 和 90。我正在尝试获取最新/最后一个,即 90。
【问题讨论】:
-
试试这样的
Submission::where('status','redo')->latest()->groupBy('user_id')->get(); -
@Joseph 我得到 ID 1 而不是 2
-
能否添加结果
-
@Joseph 尝试检查我的更新。谢谢
-
您想获取给定用户的最新记录还是所有用户的最后一条记录?
标签: laravel eloquent greatest-n-per-group