根据一对多关系的值对集合进行排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据一对多关系的值对集合进行排序相关的知识,希望对你有一定的参考价值。
我正在构建一个过滤功能(已经可以使用)。现在我只想添加一个订单功能:按“艺术家名称”,“艺术品标题”排序,...
可能的订单值不是此表中的“字段”。我找不到启动这个“orderBy”查询的方法。我正在寻找的是这样的:
$artworks = $artworks->orderBy(function($q) use($request){
$q->where('title', 'LIKE', '%artist_name%');
});
但显然这不起作用。有没有办法做到这一点?例如:我希望能够对具有title
“artist_name”的艺术品进行排序,这些艺术品按照这些记录的value
排序
我有两张桌子:Artworks
和Artwork_data
(一对多关系)。
这是我的Artwork_data
表:
答案
您可以将orderByRaw
与条件子句一起使用
->orderByRaw('case when title like %artist_name% then value else somecolumn end asc')
以上是关于根据一对多关系的值对集合进行排序的主要内容,如果未能解决你的问题,请参考以下文章
根据一对多关系中的属性对 NSFetchRequest 进行排序?
如何根据相关对象集合的属性对 Core Data 结果进行排序?