PostgreSQL连接2个表并获取所有值,即使1个表为空

PostgreSQL连接2个表并获取所有值,即使1个表为空,postgresql,Postgresql,我有两张桌子。对象和属性。属性表包含对象的属性。但对象可能没有任何属性。 我想进行一个查询,以便获得所有具有属性的对象(属性列中的值)和所有不具有属性的对象(在这种情况下,属性列将为空) 示例:提供相同结果的简化查询 SELECT row_number () OVER() AS id, seire.id seire_id, tegevus.arenguvajadus FROM andmed seire RIGHT OUTER JOIN tegevused tegevus ON seire.i

我有两张桌子。对象和属性。属性表包含对象的属性。但对象可能没有任何属性。 我想进行一个查询,以便获得所有具有属性的对象(属性列中的值)和所有不具有属性的对象(在这种情况下,属性列将为空)

示例:提供相同结果的简化查询

SELECT 
row_number () OVER() AS id,
seire.id seire_id,
tegevus.arenguvajadus
FROM andmed seire
RIGHT OUTER JOIN tegevused tegevus ON  seire.id = tegevus.seire_id
WHERE tegevus.aktiivne = true
数据示例:

andmed:

Id, Data

1 , ...
2, ... 
特格沃兹

id, aktiivne, arenguvajadus, seire_id

1, true, something something, 1

1, true, something2 , 1
预期结果

  ID, Seire_id, arenguvajadus

    1, 1, something something

    2, 1, something2

    3, 2,    

您需要从
WHERE
中删除该
左连接的
表。我假设
tegevused
是属性

SELECT 
row_number () OVER() AS id,
seire.id seire_id,
tegevus.arenguvajadus
FROM andmed seire
LEFT OUTER JOIN tegevused tegevus ON  seire.id = tegevus.seire_id AND tegevus.aktiivne = true

有什么问题?对我来说,左连接似乎很简单。@ukaszKamiński Nope,左连接不能解决这个问题。我仍然得到相同的结果,我只得到了具有属性的对象。也许工会是解决办法。1选择具有属性的对象和另一个具有属性的对象如果左连接没有帮助-使用
右外部连接
@VaoTsun仍然没有。我想查看结构、数据示例、查询和失败结果