首页 > 解决方案 > 防止错误地在同一列上进行表连接

问题描述

我正在使用 MS SQL Server Management Studio 进行 SQL 查询。有时我在同一列上连接两个表,执行该查询需要很长时间。有时我不会注意到这个错误,它会消耗我的资源。

我的问题是:MS SQL Server Management Studio 中是否有一个选项会在我加入同一列上的两个表时向我发出警告?

select mov.*, code.Description from Movements mov
inner join Codes code on code.CodeID = code.CodeID

标签: sqlsql-server

解决方案


如果按 CTRL+L 显示估计的执行计划,您会注意到“嵌套循环”运算符中的红色图标,还会显示警告“无连接谓词”。

见下图。我通过加入 HumanResources.Employee 和 Person.Person 在 AdventureWorks2014 数据库上模拟您的示例。第二个例子显示了一个错误。不幸的是,除此之外什么都没有。

在此处输入图像描述


推荐阅读