将Oracle右外连接转换为SQL Server

时间:2012-04-23 10:38:10

标签: sql-server oracle

我对SQL很新,我正在尝试将一些Oracle命令转换为SQL Server。问题在于转换以下右外连接:

where
   SOURCE_FORMATS.LOC_SIMPLE_ENTITY_ID = FILEFORMAT_INTERNAL_SIGNATURES.LOC_FILEFORMAT_ID (+)

据我所知,在SQL中,必须在“from”部分中表示如下:

from
   SIMPLE_ENTITIES "SOURCE_FORMATS"  
RIGHT OUTER JOIN FILEFORMAT_INTERNAL_SIGNATURES
on SOURCE_FORMATS.LOC_SIMPLE_ENTITY_ID = FILEFORMAT_INTERNAL_SIGNATURES.LOC_FILEFORMAT_ID

这个逻辑是否正确?

1 个答案:

答案 0 :(得分:2)

在用于外连接的ANSI前Oracle语法中,(+)用于预期不足的表,而不是要保留的表。

所以:

select * from t1, t2 where t1.col1 = t2.col2 (+)

相同
select * from t1 left join t2 on t1.col1 = t2.col2