嘿傢伙我很接近能夠代表我想要顯示的數據 有問題的列是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
已被填充到包含基本產品的產品表。該表具有以下字段:
Product_Id
Product_Name
每個國家都會有相同的產品但價格與每個國家每個產品的變化。這就是爲什麼我有StateProducts表。這張表是空的,並且將通過我創建的接口逐個填充。狀態產品表將具有以下字段
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表是空的我將如何實現這一目標?
請停止混合顯式和隱式'JOIN's。 – Kermit 2013-02-11 15:51:17
njk,我是一個不是數據庫設計師的ios程序員。我目前正試圖理解這一切。如果你可以通過不混合顯式和隱式連接來解釋你的意思,並告訴我們它們是如何寫成對我有教育意義的。謝謝 – Pavan 2013-02-11 15:54:25
@Pavan:請參閱http://en.wikipedia.org/wiki/Join_%28SQL%29#Inner_join或http://stackoverflow.com/questions/44917/explicit-vs-implicit-sql-joins討論隱式和顯式連接的區別。 – 2013-02-11 15:57:33