我不确定为什么,但是当我按照示例(来自 ms sql 服务器中的北风数据)通过键入如下所示的代码在 Microsoft SQL Server Management Studio 2008 上执行子查询时,
Select Orders.OrderID,
(Select Customers.CompanyName
From Customers
Where Customers.CustomerID = Orders.CustomerID) As Company Name
From Orders,
Customers
这个带有子查询的 sql 代码自动获得了交叉连接并成为
Select Orders.OrderID,
(Select Customers.CompanyName
From Customers
Where Customers.CustomerID = Orders.CustomerID) As Company Name
From Orders
CROSS JOIN Customers as Customers_1
我玩过这个的几个变种,但没有消除这个问题的运气。这是 microsoft sql server management studio 2008 的已知错误吗?如果是,是否已修补,如何找到已修补的?否则,我如何向 Microsoft 报告此问题并让他们真正快速修复它?
在我的实际查询中,我需要通过使 ID 相等来查询/查找这个特定表的名称大约 50 次,我认为为此做任何类型的 JOIN 简直是愚蠢的,因为代码很粗糙,很长,和性能可能很差?