gpt4 book ai didi

postgresql - Postgres 多重连接

转载 作者:行者123 更新时间:2023-11-29 11:07:09 25 4
gpt4 key购买 nike

这是一个 postgres 数据库。我正在尝试从品种表中提取狗的品种名称(Cane Corso、拉布拉多等),以根据位于动物表中的外键显示。我的问题是动物表有这个单一品种表的两个外键,而且我的查询总是出错。第一个品种名称将基于左连接返回,但第二个品种名称无法显示,因为我已经有一个左连接。以下是我正在尝试做的事情的简要概述:

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,我在这方面失败得很惨。我可以轻松地对品种名称进行硬编码并将其显示在应用程序中,但这不利于在数据库中更改、添加或删除品种名称。

最佳答案

只需在同一张表上进行另一个连接:

SELECT animal.ID, breed1.BreedName as BreedName1, breed2.BreadName as BreadName2 
FROM animal
LEFT JOIN breed as breed1 ON animal.breedID=breed1.ID
LEFT JOIN breed as breed2 ON animal.breedID=breed2.ID
WHERE animal.ID='7';

关于postgresql - Postgres 多重连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8779918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com