-2

我正在使用 SQL Server 2008 R2。我想加入表格,但总是得到错误

无法绑定多部分标识符

我有 3 张桌子Drivers和. 我有外键。如何加入这些表以获取所有三个表的详细信息?RequestJourneydriver_idJourney

Select driver.driver_name 
from Drivers,
     Journey 
where driver.id = journey.id 
  and driver.id=1; 
4

3 回答 3

0

您似乎只加入了三张桌子中的两张 - 对吗?

正确的、符合 ANSI SQL-92 标准的方法是:

SELECT 
    driver.driver_name 
FROM
    Drivers
INNER JOIN
    Journey ON driver.id = journey.id 
WHERE
    driver.id = 1; 

这是使用ANSI 标准(自1992年以来- 至今已有 20 多年!)JOIN的语法INNER JOIN(还有LEFT OUTER JOIN,和更多) RIGHT OUTER JOINFULL JOIN而不仅仅是用逗号分隔FROM子句中的表列表。

请参阅 Aaron Bertrand 的优秀博文 踢坏习惯:在该主题上也使用旧式 JOIN 。

于 2013-05-15T12:56:35.503 回答
0

当在 SELECT 语句中引用列时使用别名并且使用的别名未在 SELECT 语句的 FROM 子句中的任何位置定义时,通常会发生此错误。
有关更多详细信息,请访问此处

于 2013-05-15T11:42:21.800 回答
-1

司机+s

Select Drivers.driver_name 
from Drivers,
     Journey 
where Drivers.id = journey.id 
  and Drivers.id=1; 
于 2013-05-15T12:05:31.050 回答