有一个名为供应商的表格,其中包含以下数据:
supplier_id minimum_order_price 1 100 2 55 4 33
有一个名为suppliers_products的表,其中包含以下数据: 假设product_id仅适用于一个供应商。
supplier_id product_id 1 3237022467 1 3298604931 2 1792078659 2 3237022083 4 1963023491
一个supplier_id可能有很多product_id。
我有一个数据,其中product_id及其价格来自某些第三方。 示例:
product_id price 3237022467 45 3298604931 56 1792078659 78 3237022083 123 1963023491 65
这是否可以仅显示产品价格高于其供应商minimum_order_price的结果?
假设product_id只与一个供应商合作。
答案 0 :(得分:3)
试试这个解决方案
SELECT s.supplier_id,
s.minimum_order_price,
sp.product_id,
pp.price
FROM suppliers s
INNER JOIN suppliers_products sp ON s.supplier_id = sp.supplier_id
INNER JOIN product_prices pp ON pp.product_id = sp.product_id
WHERE s.minimum_order_price < pp.price
答案 1 :(得分:0)
可能会帮助你
select suppliers_products.* from suppliers_products
left join suppliers
on suppliers.supplier_id = suppliers_products
.supplier_id
left join product
on suppliers_products.product_id = product.product_id
where product.price > suppliers.minimum_order_price
答案 2 :(得分:0)
select third_party_table.product_id, third_party_table.price from
third_party_table, suppliers_products, suppliers
where third_party_table.product_id = suppliers_products.product_id
and suppliers_products.supplier_id = suppliers.supplier_id
and third_party_table.price> suppliers.price