将oracle sql转换为sql server

ux6nzvsh  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(310)

我正在考虑将oracle查询转换为sql server查询,我有点困惑,因为我想确保我正确理解它。。。
假设我有个问题。。

Select t1.Name, t2.Address, t3.Num
From t1, t2, t3
Where t1.code = t2.othercode
  and t2.Id = t3.otherId
  and t3.Indicator = 'N'

现在 FROM 声明-这意味着他们都是 INNER JOINED 自动地?但我没有具体说明什么 FIELDS 他们在一起吗?我的问题基本上是,oracle中的where子句是我应该加入的查询的from部分,如:

SELECT t1.Name, t2.Address, t3.Num
FROM t1 
JOIN t2 ON t1.code = t2.othercode
JOIN t3 ON t2.id = t3.otherId AND t3.indicator = 'N'

上述两个查询是否也会这样做?
我在oracle中没有像在sqlserver中那样精确的数据,我正在努力确保我的逻辑是正确的。
谢谢。

vs91vp4v

vs91vp4v1#

你的 join 查询相当于带逗号的版本。查询在功能上应该是等价的(返回相同的结果集)。我真的希望他们能拿出同样的执行计划。
也就是说,您应该使用 join 在两个数据库中。20多年来,这一直是首选语法(一般来说,oracle的出现有点晚)。
而且这两个数据库都应该用逗号来处理查询——数据库仍然支持古老的语法。所以,你可以用 join 并验证它是否生成相同的结果集。

相关问题