【发布时间】:2016-09-07 07:22:54
【问题描述】:
我有一个 products 表,其中有一个 price(General Price) 列。我有第二个 product_price 表,其中包含 product_id、company_id 和 price(公司特定产品价格)。
这个想法是为不同的公司设置和显示不同的产品价格,如果在product_price表中没有为所选公司设置价格,它应该从产品表中获取一般价格。
我尝试使用左连接。但是,没有得到想要的结果
SELECT
products.id, products.price, product_price.price
FROM
products
LEFT JOIN
product_price ON products.id = product_price.product_id
AND company_id = $id
【问题讨论】:
-
如果您使用 eloquent 我认为与 if statment 一起使用会更容易。如果从第一个结果返回的值为 null,则将执行另一个(另一个 if $thing ==null)将获取数据从第二张桌子,我不知道这是否正是你想要的,但这就是我解决此类问题的方式
-
我想减少这里的处理时间,因为会有大量的没有。的产品。我更喜欢创建一个视图并从那里访问数据。