嘿伙计们,我非常接近能够表示我希望显示的数据有问题的列是a.state_Id
。我从我所做的研究中了解到,这a.State_Id
超出了范围。我的 sql 语句缺少什么?
如果我只取出a.State_ID = c.State_Id
剩下b.Product_Id = c.Product_Id
的数据,则显示数据,但我需要匹配状态和产品。
我知道我需要在另一个join
地方添加,但我不确定如何。如果有人可以帮助我,那就太棒了!
SELECT a.state_id,
a.state_name,
a.state_abbreviatedname,
b.product_id,
b.product_name,
c.stateproduct_price
FROM states a,
products b
LEFT OUTER JOIN stateproducts c
ON a.state_id = c.state_id AND b.product_id = c.product_id
更新 1
状态表已填充并包含以下字段:
State_Id
State_Name
State_AbbreviatedName
已填充以包含基本产品的 Products 表。此表具有以下字段:
Product_Id
Product_Name
每个州都有相同的产品,但是每种产品的价格会随着每个州的变化而变化。这就是为什么我有 StateProducts 表的原因。这个表是空的,会被我创建的一个界面一一填充。statesproducts 表将包含以下字段
State_Id //reference/relational field to be user for comparison
Product_Id //reference/relational field to be user for comparison
StateProduct_Price //new field
所以我知道我将在价格列中收到 NULL 值。
我已经能够返回美国和产品表的一种 cartesion 产品。但是,我现在需要在此 cartesion 表的右侧附加每个组合的价格。记住 stateproducts 表是空的,我将如何做到这一点?