gpt4 book ai didi

mysql - 获取用户的 DISTINCT id 并找到其列的 MAX,然后更新、LARAVEL

转载 作者:行者123 更新时间:2023-11-29 16:41:10 26 4
gpt4 key购买 nike

我想要做的是,基于关联列的max值的不同 id,然后更新 相应的一列。

例如

id  |  name  |  total  |  description  |  updateThis

1 | john | 100 | example | 0
2 | dave | 300 | example | 0
2 | johno | 500 | example | 0
4 | derik | 900 | example | 0
5 | Sam | 1000 | example | 0
4 | bool | 12200 | example | 0
1 | john | 1200 | example | 0
5 | john | 300 | example | 0

我希望它看起来像这样:

id  |  name  |  total  |  description  |  updateThis

1 | john | 1200 | example | 1
2 | johno | 500 | example | 1
4 | bool | 12200 | example | 1
5 | Sam | 1000 | example | 1

我使用的查询生成器不是一种 Eloquent 方式,这两者都是一个有用的答案,如果有人能同时提供这两个答案那就太棒了,我只需要帮助,谢谢。

最佳答案

你可以使用这个:

$rows = DB::table('table')
->select('id', DB::raw('max(total) as total'))
->groupBy('id')
->get();
foreach($rows as $row) {
DB::table('table')
->where('id', $row->id)
->where('total', $row->total)
->update(['updateThis' => 1]);
}

关于mysql - 获取用户的 DISTINCT id 并找到其列的 MAX,然后更新、LARAVEL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53329885/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com