mysql中update一個表的字段時,該字段的值需要從另一個表中select來時的解決辦法

如果update一個表的字段時,該字段的值需要從另一個表中select來時,此時需要連表更新,mysql的語法如下:

update oss_system_user a inner join (select id, refGroupId from oss_system_department) b on a.department = b.id set a.departmentGroupId = b.refGroupId;

常規思維這樣寫是不正確的:

update oss_system_user t set t.departmentGroupId = (select b.refGroupId from oss_system_user a join oss_system_department b on a.department = b.id where a.loginId = 'admin') where t.loginId = 'admin';

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章