我的子查询返回超过1行

时间:2012-09-10 14:33:24

标签: sql

当然,问题是我在子查询中获得了更多行。

但我不知道如何解决它以实现我的目标。

这是我的查询的样子:

SELECT movies.name, movies.id, 
    (SELECT username FROM users INNER JOIN movies ON 
        movies.added_by_id = users.id) 
    AS added_by_username FROM movies

例如,我们的数据库中有更多电影,这些电影是由用户添加的。

目标:我想显示所有电影和添加它们的用户的用户名。

2 个答案:

答案 0 :(得分:10)

不需要子查询:

SELECT movies.name, movies.id, username 
FROM users 
  INNER JOIN movies 
    ON movies.added_by_id = users.id

答案 1 :(得分:2)

SELECT movies.name, movies.id, 
(SELECT TOP 1 username FROM users INNER JOIN movies ON 
    movies.added_by_id = users.id) 
AS added_by_username FROM movies