修复此SQL语句?

时间:2014-07-23 18:40:30

标签: sql

我想知道这个SQL语句有什么问题吗?

   select *
    from
          select * from Actors where Actors.Name = "John Twain"
    inner join 
          ActorRoles  on   Actors.ActorID = ActorRoles.ActorID
    inner join
          Movies  on       ActorRoles.MovieID=Movies.MovieID  

2 个答案:

答案 0 :(得分:4)

 select *
    from
          (select * from Actors where Actors.Name = "John Twain") AS Actors
    inner join 
          ActorRoles  on   Actors.ActorID = ActorRoles.ActorID
    inner join
          Movies  on       ActorRoles.MovieID=Movies.MovieID 

像这样的子查询需要()和" new"的一个表别名。结果表。

但这更好:

select *
    from Actors 
    inner join 
          ActorRoles  on   Actors.ActorID = ActorRoles.ActorID
    inner join
          Movies  on       ActorRoles.MovieID=Movies.MovieID 
where Actors.Name = "John Twain"

答案 1 :(得分:0)

为什么不简化?

SELECT *
FROM Actors
INNER JOIN ActorRoles ON Actors.ActorID = ActorRoles.ActorID
INNER JOIN Movies ON ActorRoles.MovieID = Movies.MovieID
WHERE Actors.NAME = "John Twain"