我想检索插入到表中的最后一个文件。我知道方法first()存在,并为您提供表中的第一个文件,但我不知道如何获得最后一个插入。


当前回答

你只需要检索数据并反转它们,你就会得到你想要的记录,让我解释laravel 9的代码

return DB::table('files')->orderBy('upload_time', 'desc')->first();

如果你不愿意。x的最后结果

 return DB::table('files')->orderBy('upload_time', 'desc')->limit(x)->get();

其他回答

你可以使用eloquent来使用这个函数:

模型::最新的()- > (1)- > ();

使用模型::(user_id, user_id美元)- >最新()- >先()- > (); 它将只返回一条记录,如果没有找到,它将返回null。 希望这能有所帮助。

请注意,如果您正在寻找顺序的或事件/有序的记录,last()、latest()是不确定的。最后/最近的记录可以具有完全相同的created_at时间戳,而您返回的是哪一个不是确定的。所以做orderBy(id|foo)->first()。欢迎其他关于如何确定的想法/建议。

你可以使用Laravel提供的最新范围与你想要过滤的字段,让我们说它将按ID排序,然后:

Model::latest('id')->first();

因此,在Laravel默认情况下,你可以避免通过created_at字段进行排序。

获取最后的记录细节

模型::所有()- > ();或 模型:orderBy(“id”,desc) - > ();

获取最后一个记录id

模型::所有去年()()- > - > id;或 模型:orderBy(“id”,desc) - >第()- > id;