postgresql - 如何在 Postgresql 中使用内联 View (从子句中选择)进行外部连接

标签 postgresql join derived-table inline-view

我有一个类似于这个简化示例的查询:

select u.id, sq.score
from usr as u,
  (select user_id, score FROM score WHERE bar = ?) as sq
where u.id = sq.user_id

我希望连接 (u.id = sq.user_id) 成为外部连接。我不知道如何在 from 子句中使用 JOIN 和这样的“select”。

我知道我可以做这个例子而不必在 from 子句中使用 select 但这不是我在我的应用程序中需要的。

最佳答案

像这样:

select u.id, sq.score
from usr as u 
left join (    -- or right/full join as per your needs
    select user_id, score FROM score WHERE bar = ?
) as sq
on u.id = sq.user_id

关于postgresql - 如何在 Postgresql 中使用内联 View (从子句中选择)进行外部连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42153411/

相关文章:

postgresql - 有没有办法删除 libpq(PostgreSQL)中已经准备好的语句?

mysql - 带 sum 的复杂关系 mysql 查询

mysql - 仅与另一个表中的最新记录连接:- Remove replication

mysql - 有什么方法可以从派生表中进行子选择吗?

mysql - mysql派生表如何使用索引

mysql - mysql中如何根据条件添加join

node.js - AWS Lambda上的 Node 函数无法使用node-pg连接到数据库

postgresql - 比较值和列时的光滑过滤器是选项

python - SQLAlchemy - 将 where 子句添加到选择生成子查询

带条件列的 Mysql View