Laravel eloquent查询中如何使用where like关联关系?

4
我的数据库技能不是很好,我正在寻求在Laravel中构建查询的帮助。
我有一个A表和一个B表,A表有一个字段引用B表中的字段。
所以我可以这样做:$tableA->tableB->title 我想要的是类似于$tableA->tableB->where('title', 'LIKE', $query)->get()的东西。
我想要做的是进行WHERE LIKE查询,并返回表A的结果,但在表B中搜索特定列(对于此示例,该列为标题)。
我该如何做到这一点?
谢谢。

请展示你的代码。没有人会为你编写代码。 - ketchupisred
1个回答

13
请尝试这种方式,
    $posts = ModelA::whereHas('modelb', function ($query) {
         $query->where('title', 'like', 'foo%');
    })->get();

有没有一种方法可以将多个whereHas链接在一起? - Farveaz
1
是的,您可以链接多个whereHas查询。请注意,如果您正在使用父模型的相关模型的相关模型(在此情况下为modelb),则将使用点表示法。 - Mohamed Akram

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接