是否可以使用我的数据库结构使用Laravel或Sql执行此查询?

时间:2017-05-17 21:01:23

标签: php mysql laravel

我有一个包含表articles和表category的数据库。

我的表articles有一些字段。一个是category_id,另一个是orientation

在我的设计中,类别按方向排列。这是一个例子 enter image description here

所以,我想获得所有类别,但这些类别必须属于正确的方向。 我想要所有类别的列表,其中包含' web'方向,例如。

我不知道这种架构是否可行,如果你理解我的话。

欢迎任何帮助

更新:添加架构

enter image description here

1 个答案:

答案 0 :(得分:4)

如果你已经建立了你的模型和关系,我相信这应该做你想要的:

$categories = Category::whereHas('articles', function($query) {
   $query->where('orientation', 'web')
})->get()

来自Laravel documentation

  

如果您需要更多电量,可以使用whereHasorWhereHas   将“where”条件放在您的查询上的方法。这些方法   允许您向关系约束添加自定义约束,   例如检查评论的内容