首页 > 解决方案 > 如何将 Laravel 数据透视量与表格列进行比较

问题描述

我真的坚持这一点。

我与演员和作品有多对多的关系。我需要得到所有没有他们需要的所有演员的作品。每个作品所需的演员是 Works 表上的一个属性,称为“extras_needed”

到目前为止,我已经尝试过 withCount,但你不能在 where 上使用它。这是我拥有的最接近的东西:

$works = $works->has('actors','<','extras_needed');

但它试图将 extras_needed 用作字符串,我需要它来将其视为列本身。

有什么建议吗?提前致谢

标签: phplaraveleloquent

解决方案


你会想要使用DB::raw

有时您可能需要在查询中使用原始表达式。

有了这个,我们可以将您的查询变成:

$works = $works->has('actors', '<', \DB::raw('extras_needed'));

希望这有帮助!


推荐阅读