我有以下表格:
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();