Oracle:"(+) "在WHERE子句中的作用是什么?

在我们正在迁移的一个基于Oracle的应用程序中发现了以下内容。(一般化):

SELECT
    Table1.Category1,
    Table1.Category2,
    count(*) as Total,
    count(Tab2.Stat) AS Stat
FROM Table1, Table2
WHERE (Table1.PrimaryKey = Table2.ForeignKey(+))
GROUP BY Table1.Category1, Table1.Category2

什么是 (+) 在WHERE子句中使用?我从来没有见过这样的用法。

解决方案:

根据”(+) “在”=”的哪一边,它表示左外连接或右外连接(在本例中,它是左外连接)。 这是老式的Oracle语法,有时会被先学过的人所喜欢,因为他们喜欢这样能让他们的代码更短。

不过为了可读性,最好不要用它。

给TA打赏
共{{data.count}}人
人已打赏
未分类

如何在同一时间懒惰加载多个组件

2022-9-13 15:57:37

未分类

如何在swift[复制]中打印一个没有括号和逗号的洗牌数组?

2022-9-13 15:57:39

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索