首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel 5:如何根据whereHas进行orderBy?

Laravel 5中,可以使用whereHas方法结合orderBy方法来实现根据关联模型的条件进行排序。

whereHas方法用于筛选具有指定关联关系的模型,可以传入关联关系的名称和一个闭包函数作为参数。闭包函数中可以使用where方法来添加关联模型的条件。

orderBy方法用于对查询结果进行排序,可以传入要排序的字段名和排序方式(升序或降序)作为参数。

下面是一个示例代码:

代码语言:txt
复制
$posts = Post::whereHas('comments', function ($query) {
    $query->where('status', 'approved');
})
->orderBy('created_at', 'desc')
->get();

上述代码中,假设有一个Post模型和一个Comment模型,它们之间存在一对多的关联关系。我们想要获取所有具有已批准评论的文章,并按照创建时间倒序排序。

在闭包函数中,我们使用where方法添加了一个条件,只选择statusapproved的评论。

最后,我们使用orderBy方法按照created_at字段进行倒序排序。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版(CDB):https://cloud.tencent.com/product/cdb_mysql
  • 云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 人工智能机器学习平台(AI Lab):https://cloud.tencent.com/product/ailab
  • 物联网开发平台(IoT Explorer):https://cloud.tencent.com/product/iothub
  • 移动推送服务(信鸽):https://cloud.tencent.com/product/tpns
  • 对象存储(COS):https://cloud.tencent.com/product/cos
  • 区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云游戏引擎(GSE):https://cloud.tencent.com/product/gse
  • 腾讯云直播(CSS):https://cloud.tencent.com/product/css
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何根据目标表格式进行整理数据?

最近因为有在准备替拉美最大电商平台Mercadolibre在国内招商,所以需要把商家提交的资料进行整理,达到给国外要求的目标格式。...统一标题 通过对应的替换关系进行一一替换 A. 建立标题对应表 ? B....如何在Power Query中批量修改标题? 2. 调整列数 因为列名及列数需要保持和目标表格式一致,所以这里需要增加未显示的列以及去除不在目标表格式里的列。 A....如何使用Power BI对2019互联网趋势报告进行进一步的分析?——人口预测篇 ? 3....这样我们就可以对资料进行快速的整理,而且在函数中基本用的都是变量,所以我们后期主要要做的就是列名的对应整理即可。

72010

laravel ORM关联关系中的 with和whereHas用法

渴求式预加载 可以有效的避免 N+1 问题,用法如下: $books = App\Book::with('author')- get(); 如果有多个关联关系可以用“,”隔开,还可以使用闭包来对关联关系进行限制...查询存在的关联关系,还有对应的 whereDoesntHave ,查询不存在的关联关系,像下面这样: // 获取发布文章标题中有first的用户 $users= User::whereHas('posts...function ($query) { $query- where('title', 'like', '%first%'); })- get(); 结果会查找发布过文章标题包含first的部分用户,有筛选功能 whereHas...就像用户发文章, user 存在关联关系 post,如果是 user- with(‘post’),你会得到所有用户和用户发布的文章信息,没发文章的用户就没有文章信息,如果是 user- whereHas...这就是我对 with 和 whereHas 的一些理解了 以上这篇laravel ORM关联关系中的 with和whereHas用法就是小编分享给大家的全部内容了,希望能给大家一个参考。

3.8K31

如何根据搜索来源进行关键词针对性布局?

20220117004743.png 在对网站进行SEO优化时,关键词布局则是重中之重,SEO推广人员必须要根据用户的搜索习惯结合产品的分类、属性、性能参数、产品的地域与竞争度及自身的优劣势进行关键词的布局...在网站的建设及优化过程中,必须要根据实际情况作出判断,热门的关键词尽管流量大,但是竞争度也相对较大,并且不一定会带来相应的转化。...在行业竞争度激烈的情况下,如何根据公司SEO的整体实力以及产品策略选择相对应的关键词呢?...一、利用关键词工具挖掘 关键词挖掘工具是每个SEO推广人员几乎每天都要用到的分析工具,除了挖掘关键词以外,还可以根据关键词进行用户的行为与搜索习惯进行分析,SEO推广人员常用的关键词工具包括站长工具关键词工具...同时也可根据关键词竞价的点击量和转化进行分析,从而调节官网关键词策略的重心与针对性布局。

36300

3分钟短文 | Laravel 自定义 SQL 查询参数绑定

引言 laravel使用模型进行数据库操作时,并不是所有的字段或者关联关系 都能满足查询需求,有时候会有一些MySQL的函数计算等功能放在数据库 层面执行。 本文说一说自定义的参数绑定办法。...) ) * sin( radians( lat ) ) ) 其中问号位置就是我们需要填入的变量数据,也就是一个经纬度坐标,根据参照点,计算出数据库内每条记录内的该点距离参照点的距离。...那么如果写到程序里,应该如何把绑定参数按顺序传入呢。 既然是自定义的字段名,我们可以使用 DB::raw 方式传入。...如果大家经常使用laravel的调试功能的话,应该会注意到,这种问号的写法是laravel本身封装SQL语句用的。...; 写在最后 本文通过三种方式实现了laravel模型进行复杂的自定义查询, 其中提供了两种参数绑定的方式,我们推荐使用 selectRaw 的方式, 更为直观。

2K40

Laravel5.1 框架模型查询作用域定义与用法实例分析

本文实例讲述了Laravel5.1 框架模型查询作用域定义与用法。分享给大家供大家参考,具体如下: 所谓的查询作用域就是允许你自定义一个查询语句 把它封装成一个方法。...定义一个查询作用域 定义查询作用域就是在模型中声明一个scope开头的方法: public function scopeHotArticle($query) { return $query- orderBy...function getIndex() { $hot = Article::hotArticle(); dd($hot); } 2 动态的查询作用域 动态作用域是允许你传入参数的,根据参数来返回具体的逻辑...,' ',$comment); } public function getIndex() { $articles = Article::commentMoreThan(10)- orderBy...$article- comment_count; echo "<br / "; } } 更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程

73430

重新学习Mysql数据库5根据MySQL索引原理进行分析与优化

该系列博文会告诉你如何从入门到进阶,从sql基本的使用方法,从MySQL执行引擎再到索引、事务等知识,一步步地学习MySQL相关技术的实现原理,更好地了解如何基于这些知识来优化sql,减少SQL执行时间...本文旨在以开发工程师的角度来解释数据库索引的原理和如何优化慢查询。...多数情况下,我们知道索引能够提高查询效率,但应该如何建立索引?索引的顺序如何?许多人却只知道大概。其实理解这些概念并不难,而且索引的原理远没有想象的那么复杂。 二:索引建立 1....所以语句应该写成createtime = unixtimestamp(’2014-05-29’); 5.尽量的扩展索引,不要新建索引。...(原文表述有误,如果通配符%不出现在开头,则可以用到索引,但根据具体情况不同可能只会用其中一个前缀) 情况六:范围查询。

78010

PHP-web框架Laravel-Eloquent ORM(三)

四、查询构建器Laravel框架中的Eloquent ORM提供了方便的查询构建器,用于构建复杂的查询语句。下面是一些常用的查询构建器方法。...orderBy方法orderBy方法用于添加排序条件,例如:$users = User::orderBy('created_at', 'desc')->get();上述代码中,查询了按照创建时间倒序排列的所有用户...总结通过上述文档和示例,我们可以看出Laravel框架中的Eloquent ORM提供了便捷的对象关系映射功能,可以大大简化开发者的数据库操作。...在使用Eloquent ORM进行开发时,需要注意以下几点:模型类名默认对应的表名是模型类名的复数形式,如User模型对应的表名是users,如果需要指定表名可以通过定义$table属性来实现。...查询构建器提供了丰富的方法来构建复杂的查询语句,可以根据具体需求进行使用。

1.5K41
领券