【发布时间】:2019-05-25 09:36:48
【问题描述】:
我的数据库中有两个表
- 产品
- product_variations
两者都有价格列。
如果任何产品有变体,则 产品表 的 price 列将被取消,并且 variation 中的 price 列表会有一些价值。
但如果产品没有变化,那么产品表的 price 列将具有一些值,但 variation 表中的 price 列将没有价值
我想获取所有价格从低到高的产品,反之亦然。
$shopProducts = product::where(
[
"publish" => 'PUBLISH',
'shop_id' => input::get('shopId')
]
)->orderBy('price', 'asc')
->paginate(12);
上述查询返回正确的所有产品,并将所有那些有变化且价格列为空的产品放在最后。
但我想要一个查询,它首先检查产品的价格列,如果它为空,然后转到产品变化表并搜索一个值,然后以 desc 或 asc 的形式返回结果。
【问题讨论】:
-
您是否需要,例如。如果产品的价格为零,那么获取该产品的所有变体并加入结果?
-
是的,我需要这样的解决方案
标签: php mysql laravel eloquent