Eloquent中的SELECT * FROM(SELECT ..)(Laravel4)

时间:2014-08-17 15:50:46

标签: laravel laravel-4 eloquent

如何在Laravel4中使用Eloquent进行此查询:SELECT * FROM (SELECT * FROM some_table ORDER BY id DESC LIMIT 3) a ORDER BY id

提前致谢。

2 个答案:

答案 0 :(得分:0)

Raw: DB::select('SELECT * FROM (SELECT * FROM some_table ORDER BY id DESC LIMIT 3) a ORDER BY id');

为什么一直使用Eloquent?它有很多局限性。查询数据库时有3个选项。 Eloquent,Query Builder和Raw。

答案 1 :(得分:0)

我只是查了一下,但无法找到办法。

你可以创建一个普通的Eloquent查询,然后用PHP对它进行排序。

$query = MyModel::orderBy('id', 'desc')->limit(3)->get();
$query->sortBy(function($object) {
    return $object->id;
});
dd($query->toArray());