这是我的数据库表
每个请求都有一个产品,每个列表都有很多请求 现在我想得到列表X中产品的最小和最大价格/尺寸,我怎样才能通过Laravel Elequent实现这一目标?
列出表格
+----+----------+
| id | user_id |
+====+==========+
| 1 | 1 |
+----+----------+
| 2 | 1 |
+----+----------+
| 3 | 2 |
+----+----------+
请求表
+----+-------------+----------+
| id | product_id | list_id |
+====+=============+==========+
| 1 | 1 | 1 |
+----+-------------+----------+
| 2 | 1 | 1 |
+----+-------------+----------+
| 3 | 2 | 2 |
+----+-------------+----------+
产品表
+----+-------+------+-------+
| id | price | size | other |
+====+=======+======+=======+
| 1 | 110 | 10 | test |
+----+-------+------+-------+
| 2 | 130 | 12 | test |
+----+-------+------+-------+
| 3 | 100 | 24 | test |
+----+-------+------+-------+
| 4 | 200 | 16 | test |
+----+-------+------+-------+
答案 0 :(得分:0)
我想获得列表X中产品的最小和最大价格/尺寸
$maxSize = Product::whereHas('request.list', function($q) use($listId) {
$q->where('list.id', $listId);
})
->max('size');
$minSize = Product::whereHas('request.list', function($q) use($listId) {
$q->where('list.id', $listId);
})
->min('size');
以最低和最高价格执行相同操作。