我有两个数据库 3dside
和 3dside_old
。我想从 3dside_old 更新 3dside 中的一列,其中两个字段相同 (cases.id_cases)。
我尝试过类似的事情:
UPDATE cases SET hospital_id = (SELECT hospital_id FROM 3dside_old.cases)
WHERE 3dside.cases.id_cases = 3dside_old.cases.id_cases;
但是我有错误代码:1054。“where 子句”中存在未知列“3dside_old.cases.id_cases”
如何在 where 子句中声明另一个数据库?
我对 MySQL 还很陌生,如果答案对你来说很简单,我很抱歉
最佳答案
您可以使用 JOIN 并为表指定别名,以更好的方式做到这一点
update `3dside`.`cases` c1
join `3dside_old`.`cases` c2 on c2.id_cases = c1.id_cases
set c1.hospital_id = c2.hospital_id
关于mysql - 通过不同数据库更新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29511593/