SQL Server在视图查询中将LEFT JOIN替换为LEFT OUTER JOIN

lis*_*aro 1 t-sql sql-server views

我需要在视图中使用LEFT JOIN,但是每次保存视图时,SQL Server都会将LEFT JOIN替换为LEFT OUTER JOIN。

尝试显式使用LEFT INNER JOIN时,出现错误“单词'INNER'附近的语法不正确”。此外,当我想为视图创建索引时,出现错误“无法使用OUTER JOINS向视图添加聚簇索引”。

这太疯狂了,为什么会发生这种想法?

在此处输入图片说明

因此,当我尝试为视图创建索引时,得到的消息是我使用了外部联接,尽管我没有。

在此处输入图片说明

Ste*_*han 7

您会使连接感到困惑,并且请记住,有多种编写连接的方法。您正在寻找的是左外连接(外连接是可选的)。没有左内联接。

联接分为三种主要类型。

类型1:INNER JOIN-仅在两个表匹配的情况下

1.)内部联接又名联接

类型2:其中一个或两个表匹配的外部联接

1.)左外联接又名左联接

2.)正确的外部联接又名正确的联接

3.)FULL OUTER JOIN又名FULL JOIN

类型3:CROSS JOIN-笛卡尔积(每个表的所有可能组合)

1.)交叉加入

这是显示每个工作原理的图形:

在此处输入图片说明