UPDATE cg_disease_department AS a SET a.department_id = 
  SELECT department_id FROM cg_department AS b WHERE a.department_name = b.name我的需求是 将b表的departmentid 更新到 a表的departmentid 条件是 a.department_name = b.name我这sql问题在那

解决方案 »

  1.   

    手册上说:
    您也可以执行包括多个表的UPDATE操作。table_references子句列出了在联合中包含的表。该语法在13.2.7.1节,“JOIN语法”中进行了说明。以下是一个例子:UPDATE items,month SET items.price=month.price
    WHERE items.id=month.id;
    以上的例子显示出了使用逗号操作符的内部联合,但是multiple-table UPDATE语句可以使用在SELECT语句中允许的任何类型的联合,比如LEFT JOIN。注释:您不能把ORDER BY或LIMIT与multiple-table UPDATE同时使用。于是你应该知道问题在哪里了吧?