Sql 获取其他“对象/记录”作为另一个“列/属性”的属性

Sql 获取其他“对象/记录”作为另一个“列/属性”的属性,sql,postgresql,postgresql-10,Sql,Postgresql,Postgresql 10,我有三张桌子: Item和OwnerImage具有所有者的外键。并非所有所有者都有项目 我想获得所有项目的列表,以及它们的所有者和所有者图像,这可以通过加入来实现 但也可以从数据库中将所有者作为项的“属性”获取: Item.Owner.OwnerImage像对象一样 现在我正在做3个查询,并使用codepython中的循环进行匹配,但我想知道一个查询是否可行 您可以使用联接为存在关系的另一个表中的给定值选择数据: select owner from owner o1 inner join own

我有三张桌子:

Item和OwnerImage具有所有者的外键。并非所有所有者都有项目

我想获得所有项目的列表,以及它们的所有者和所有者图像,这可以通过加入来实现

但也可以从数据库中将所有者作为项的“属性”获取:

Item.Owner.OwnerImage像对象一样

现在我正在做3个查询,并使用codepython中的循环进行匹配,但我想知道一个查询是否可行

您可以使用联接为存在关系的另一个表中的给定值选择数据:

select owner
from owner o1
inner join ownerimage o2
on o2.owner_id = o1.id

不确定事件与此有何关联,但这应该可以让您开始

到目前为止您尝试了什么?正如我所说,我在此时分别查询它们,并在python中进行匹配,循环并检查fk键和primary_键是否相同。我错了,我编写了事件而不是项,谢谢我更新了
select owner
from owner o1
inner join ownerimage o2
on o2.owner_id = o1.id