php - Laravel - 按 "a Field and Its Relationship Model Field"之间的条件过滤模型

标签 php laravel eloquent orm subquery

我有这两个模型,它们具有一对一的关系。

“产品”

  • ID
  • 姓名
  • 最低要求

“产品数据”

  • ID
  • 产品 ID
  • 价格
  • 哦_手

I want to get the count of product_data where its on_hand is less than its related product's minimum_required.

我已经尝试过子查询,但仍然无法弄清楚。我想要的查询可能看起来像这样。

$low_products_count = ProductDetail::where('on_hand', '<', Product::select('minimum_required')->count();

最佳答案

您可以连接表格,然后使用“whereColumn”:

 $low_products_count =Product::join('product_data','product_data.product_id','=',
    'products.id')->whereColumn('product_data.on_hand','<','products.minimum_required')->get();

关于php - Laravel - 按 "a Field and Its Relationship Model Field"之间的条件过滤模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64193395/

相关文章:

php - 在 Php 中将一周的开始日期从 'monday' 更改为 'tuesday'

php - SQL 外键用法?它到底有什么作用?什么时候需要?

php - laravel Hook Eloquent pre 和 post save 为每个模型

javascript - 无法从 Controller 获取数据到 Vue 组件

mysql - Laravel 4 Eager Loading 过滤并仅选择匹配结果

mysql - 通过 eloquent 在 Laravel 中更新文件夹计数级联删除

mysql - 拉维尔 5 : whereRaw escapes integer to string

php - 严格标准 : Only variables should be passed by reference in/main_dir/sub_dir/backup. php

php - PHP Curl从aws返回404,但可以在其他主机甚至我的机器上运行

reactjs - 混合内容与 heroku 服务器