我想检索插入到表中的最后一个文件。我知道方法first()
存在,并为您提供表中的第一个文件,但我不知道如何获取最后一个insert。
你从来没有提到你是否在使用雄辩的,拉雷维尔的默认ORM。如果您是,假设您希望通过在中创建来获取用户表的最新条目,您可能可以执行以下操作:
User::orderBy('created_at', 'desc')->first();
首先,它通过在字段中创建_来对用户进行排序,然后获取结果的第一条记录。
这将返回User对象的实例,而不是集合。当然,要使用这个选项,你必须有一个用户模型,扩展雄辩类。这听起来可能有点混乱,但是开始真的很容易,ORM真的很有帮助。
有关更多信息,请查看官方文档,该文档内容丰富且详细。
使用Laravel提供的开箱即用的最新范围。
Model::latest()->first();
这样你就不会检索所有的记录。通往orderBy的更好捷径。
您需要按您现在订购的相同字段订购,但下降。举个例子,如果你有一个上传完成的时间戳,叫做upload_time
,你会做这样的事情;
对于Pre-Laravel 4
return DB::table('files')->order_by('upload_time', 'desc')->first();
对于Laravel 4及以后
return DB::table('files')->orderBy('upload_time', 'desc')->first();
适用于Laravel 5.7及以上版本
return DB::table('files')->latest('upload_time')->first();
这将按上载时间、降序和第一个顺序对文件表中的行进行排序。这将是最新上传的文件。
问题内容: 如何在MySQL表中最后一行? 我正在读取数据,我需要从上一行中检索列值。 桌子上有一个。 问题答案: 是的,那里有一个auto_increment 如果您想要表中 所有行 的最后 一行 ,那么最后就是正确答案的时候了!有点儿:
问题内容: 什么是最好,最简单的方法?我的查询当前是: 但是,这显示前10行,而不显示最后10行。 编辑:我想要最后10行(这是,DESC做到这一点)但是,我希望它们以升序返回。 问题答案: 颠倒顺序(因此获得最后10个而不是前10个),请使用代替 编辑 根据您的评论:
问题内容: 我有超过35列的表,前20列是固定的,并且每个表中的列号都不同。我需要从表中选择最后10列,例如,我该如何实现?就像此查询返回前20条记录 我想对列执行相同的操作,即在查询中返回列名称,然后在其他查询中使用这些名称,例如: 问题答案: 您可以通过准备好的语句来实现。您的查询将如下所示: -这将创建一个内容如下的SQL: (在样品上方我不得不选择在2列中,可在该部分进行调整:) 因此,您
问题内容: 我有一个带有索引(自动递增)和整数值的表。该表长百万行。 如何搜索某个数字是否最有效地出现在表的最后n行中? 问题答案: 从@chaos给出的答案开始,但进行了一些修改: 如果使用,则应始终使用。对于RDBMS表,没有保证的隐式顺序。 通常, 您可能 会 按主键的顺序获得行,但是您不能依靠它,也不是可移植的。 如果按降序排列,则无需事先知道表中的行数。 您必须为派生表指定一个 相关名称
问题内容: 给定 当我不知道n是什么时,如何选择最后一个’service-n’行?我尝试添加,但是没有用。 我有: 但它选择第一行,而我要最后一行。 我无法使用,因为实际上’service-n’行的数量是动态的,并且变化很大。 问题答案: 答案正是我把[last()]放在哪里,我把它放在错误的地方 它在这里: 不在这里:
我想从MySQL数据库中选择最后50行,列名为id,这是主键。目标是行应该按照ASC顺序按id排序,这就是为什么这个查询不起作用 同样值得注意的是,行可以被操纵(删除),这就是为什么下面的查询也不起作用 问题:如何从MySQL数据库中检索最后N行,这些行可以被操作并按ASC顺序排列?
问题内容: 我的目标是在最后一个CSS上使用CSS ,但是这样做不是。 如何 只 选择最后一个孩子? 问题答案: 该伪类仍然无法可靠地跨浏览器使用。特别是,InternetExplorer<9和Safari<3.2绝对不支持它,尽管Internet Explorer 7和Safari 3.2 确实 支持。 最好的选择是向该项目显式添加一个(或类似的)类,然后应用。
问题内容: 我正在插入一条记录,我想使用插入的最后一条记录的ID。这是我尝试过的: 我收到错误消息: SQL语法错误;请查看与您的MySQL服务器版本相对应的手册,以在“ SELECT LAST_INSERT_ID()”附近使用正确的语法。谁能告诉我我的错误在哪里?谢谢! 问题答案: 签出mysql_insert_id() 在mysql_query()命令中执行INSERT语句后运行该函数时,其结