沃梦达 / 编程问答 / php问题 / 正文

雄辩地选择组的最后一行

Eloquent select last row of group(雄辩地选择组的最后一行)

本文介绍了雄辩地选择组的最后一行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有下表:

id  name    factory
-------------------
1   apple   1
2   orange  2
3   banana  3
4   peach   1
我要选择按factory值分组并按ID排序的值。 因此,查询将返回橙子、香蕉和桃子(不含苹果)。

我已经尝试过:

$data = Fruit::groupBy('factory')->distinct()->get();

但它返回苹果、橙子和香蕉(而不是橙子、香蕉和桃子)

我也尝试过按ID升序排序,但结果是一样的,只是颠倒了一下。

感谢任何帮助,谢谢。

推荐答案

这样解决:

$data = Fruit::whereRaw('id IN (select MAX(id) FROM fruits GROUP BY factory)')->get();

这篇关于雄辩地选择组的最后一行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:雄辩地选择组的最后一行

基础教程推荐