oracle - Oracle --> Postgres 查询
问题描述
我是一个试图将这样的查询转换为 Postgres 的 Oracle 人员。没有真正理解所有的语法等。希望有人能提供帮助吗?
甲骨文查询:
选择 c.code、c.recommendation、s.suggested、s.sugg_by、a.approved、a.app_by FROM(选择代码,推荐 FROM 推荐)c, (选择代码,建议,sugg_by FROM 建议) s, (选择代码,已批准,app_by FROM 建议) 哪里 c.code = s.code(+) 和 c.code = a.code(+);
非常感激
解决方案
你可以尝试使用OUTER JOIN
SELECT c.code, c.recommendation, s.suggested, s.sugg_by, a.approved, a.app_by
FROM (SELECT code, recommendation FROM recommendations) c
LEFT JOIN (SELECT code, suggested, sugg_by FROM suggestions) s on c.code = s.code
LEFT JOIN (SELECT code, approved, app_by FROM suggestions) a ON c.code = a.code
您似乎不需要使用子查询,因为您在子查询中没有做任何事情只选择原始列。可以直接查询表。
SELECT
c.code,
c.recommendation,
s.suggested,
s.sugg_by,
a.approved,
a.app_by
FROM recommendations c
LEFT JOIN suggestions s on c.code = s.code
LEFT JOIN suggestions a ON c.code = a.code
推荐阅读
- ios - 使用 Swift 处理递增的 JSON 名称
- go - 使用 go-colly 上传到 Firebase 存储时,内存使用量会增加,直到应用程序被终止
- types - 在 SML 中,产品类型和函数类型是类型构造函数吗?
- reactjs - 基于外部数据的样式 Mapbox GL 矢量图层
- c++ - QCursor 设置光标颜色的问题
- regex - RegEX 从 shell 脚本中的字符串中获取必填字段
- python - Python input().split() 函数问题
- hyperledger-fabric - Tx 提交后获取空缓冲区:Fabric 2.1 with fabric-network client
- node.js - 与多个连接一起使用时,Mongoose 不会在 .find() 中返回记录
- python - 在python中将基于图像的pdf转换为图像文件(png/jpg)