Oracle --gt; Postgres query(甲骨文 --Postgres 查询)
问题描述
我是一名试图将这样的查询转换为 Postgres 的 Oracle 人员.不是很了解所有语法等.希望有人能提供帮助吗?
Oracle 查询:<上一页>选择 c.code、c.recommendation、s.suggested、s.sugg_by、a.approved、a.app_byFROM(选择代码,推荐 FROM 推荐)c,(选择代码,建议,sugg_by FROM 建议) s,(选择代码,已批准,app_by FROM 建议)哪里 c.code = s.code(+)和 c.code = a.code(+);
非常感谢
可以尝试使用OUTER JOIN
选择 c.code、c.recommendation、s.suggested、s.sugg_by、a.approved、a.app_byFROM(选择代码,推荐 FROM 推荐)c左连接(选择代码,建议,sugg_by FROM 建议) s on c.code = s.codeLEFT JOIN(选择代码,已批准,app_by FROM 建议)a ON c.code = a.code您似乎不需要使用子查询,因为您在子查询中没有做任何事情只选择原始列.可以直接查询表.
选择c.代码,c. 推荐,s.建议,s.sugg_by,a.批准,a.app_byFROM 建议 cc.code = s.code 上的 LEFT JOIN 建议LEFT JOIN 建议 a ON c.code = a.codeI'm an Oracle guy trying to convert a query like this to Postgres. Not really understanding all the syntax, etc. Was hoping someone can help?
Oracle Query:
    SELECT c.code, c.recommendation, s.suggested, s.sugg_by, a.approved, a.app_by
    FROM (SELECT code, recommendation FROM recommendations) c,
         (SELECT code, suggested, sugg_by FROM suggestions) s,
         (SELECT code, approved, app_by FROM suggestions) a
    WHERE c.code = s.code(+)
      AND c.code = a.code(+);
    
Much appreciated
You can try to use 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
You seem like didn't need to use subquery, because you didn't do anything in the subquery only select original columns. you can query the table directly.
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
这篇关于甲骨文 -->Postgres 查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:甲骨文 -->Postgres 查询
				
        
 
            
        基础教程推荐
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
 - MySQL 5.7参照时间戳生成日期列 2022-01-01
 - CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
 - MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01
 - 带有WHERE子句的LAG()函数 2022-01-01
 - 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
 - 带更新的 sqlite CTE 2022-01-01
 - while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
 - 从字符串 TSQL 中获取数字 2021-01-01
 - ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
 
    	
    	
    	
    	
    	
    	
    	
    	
						
						
						
						
						
				
				
				
				