Mysql查询 - 子查询返回多行错误

时间:2011-01-07 06:10:00

标签: mysql mysql-error-1242

我有一张表resources (title, resourceid)和另一张表classifications (title, resourceid, classificationid)

我想将资源中的切片添加到分类表中,resourceid中有多个行具有相同的classifications

当我写这个查询时

update `classification` 
set `title`= (select title 
              from Resources 
              where Resources.`resourceid` = classification.`resourceid`)

我收到了这个错误:

  

错误 - 子查询返回的行数超过1行。

1 个答案:

答案 0 :(得分:1)

尝试按标题对子查询进行分组,即:

UPDATE classification SET title=(SELECT title FROM Resources
    WHERE Resources.resourceid=classification.resourceid GROUP BY title);