我有以下表格
现在我有以下查询
select *
from
Actors
LEFT OUTER JOIN
ActorRoles on Actors.ActorID = ActorRoles .ActorID
LEFT OUTER JOIN
Movies on ActorRoles.MovieID= Movies.MovieID
所以我得到以下列 - 括号表示列号
ActorID(1) Name(2) ActorID(3) MovieID(4) Role(5) MovieID(6) Title(7) Genre(8)
我对这些列如何显示感到困惑。已有一个ActorID列,那么为什么另一个ActorID列出现?我如何知道这个ActorID列属于哪个表?
答案 0 :(得分:4)
由于您是“选择*”,因此每个表格中的每一列都会显示出来。由于ActorID在2个表中,因此它在列列表中显示两次。
答案 1 :(得分:2)
您确实选择了*,这表示联接中所有表格中的所有列都会显示出来。它并不关心它们具有相同的名称,您可以从Actors表以及ActorRoles表中获取ActorId列。