這是一個postgres數據庫。我試圖從品種表中拉出狗的品種名稱(Cane Corso,拉布拉多等),以根據位於動物表中的外鍵進行顯示。我的問題是動物表有兩個外鍵到這個單品種表,我不斷收到我的查詢錯誤。第一個品種名稱將基於左連接返回,但是第二個品種名稱不能顯示,因爲我已經有一個左連接。下面是什麼,我試圖做的簡化外形:Postgres多個連接
breed table (ID, BreedName)
animal table (ID, breedID, breed2ID)
SELECT animal.ID, breed.BreedName FROM animal LEFT JOIN breed ON animal.breedID=breed.ID WHERE animal.ID='7';
我需要做的是還獲得了BreedName加入了animal.breed2ID這我在慘遭失敗。我可以很容易地對品種名稱進行硬編碼並將其顯示在應用程序中,但這不利於數據庫中品種名稱的更改,添加或刪除。
非常感謝你。澄清和完全按計劃運作!我只是做了一個品種而搞亂了它。動物名稱AS品種名稱1,品種。動物名稱AS品種名稱2。完全錯過了桌子的別名!再次感謝,這是我在科技網站上看到的最好的幫助! – user1137376 2012-01-08 18:42:42
嘿沒問題,這就是爲什麼我們在這裏:D我也同意StarShip3000的職位。但我認爲有3個或更多品種的狗不會發生。但是,如果他們這樣做,那麼一定要採用Star推薦的方法。 – kingdaemon 2012-01-08 23:38:37