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问题在那
------解决方案--------------------
手册上说:
您也可以执行包括多个表的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同时使用。
于是你应该知道问题在哪里了吧?