从Oracle转换为ANSI外部联接 [英] Conversion from Oracle to ANSI outer join

查看:191
本文介绍了从Oracle转换为ANSI外部联接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我必须用Oracle外连接表示法(+)将许多SQL查询重写为ANSI SQL.我读了一些有关Oracle语法的内容,但是有非常简单的示例.该查询应如何以ANSI表示法显示?

I have to rewrite a lot of SQL queries with Oracle outer join notation (+) to ANSI SQL. I read something about Oracle syntax but there were very easy examples. How should look this query in ANSI notation?

SELECT * FROM realtion r1, relation r2 WHERE r1.relno=r2.relno(+) AND r.id(+)=10

SELECT * FROM Mail M, Code C, Relation R WHERE M.STATUS = 2 AND C.id = M.usrID AND r.relo(+) = m.item AND R.item(+) = m.att

推荐答案

第一个查询(假设r.ID表示您是r2.ID):

First query (assuming that by r.ID you meant r2.ID):

SELECT *
  FROM realtion r1
  LEFT OUTER JOIN relation r2 
    ON r2.relno = r1.relno AND
       r2.id = 10

第二个查询:

SELECT *
  FROM Mail M
  INNER JOIN Code C
    ON C.id = M.usrID
  LEFT OUTER JOIN Relation R 
    ON r.relo = m.item AND
       R.item = m.att
  WHERE M.STATUS = 2

分享并享受.

这篇关于从Oracle转换为ANSI外部联接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆