这是一个Postgres数据库。我试图从breed表中提取狗品种名称(如Cane Corso、Labrador等),以根据位于animal表中的外键进行显示。我的问题是animal表有两个外键指向这个单一的breed表,而且我的查询一直出现错误。第一个breed名称将基于左连接返回,但由于已经有一个左连接,我无法获取第二个名称。以下是我试图执行的简化概述:
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使用,但我失败了。我可以轻松地硬编码品种名称并在应用程序中显示,但这样不利于数据库中品种名称的更改、添加或删除。