1. 程式人生 > >mysql連表更新(用一個表的資料更新另一個表的資料)

mysql連表更新(用一個表的資料更新另一個表的資料)

用一個表中的欄位去更新另外一個表中的欄位,來看一個簡單的例子就會了:

create table student
(
   student_id    int          not null
  ,student_name  varchar(30)  not null
  ,city_code     varchar(10)  null
  ,city_name     varchar(50)  null
);
create table city
(
   code varchar(10) not null
  ,name varchar(50) not null
);
insert into student values
(1, 'john', '001', null);
insert into student values(2, 'nick', '002', null); insert into city values('001', 'beijing'); insert into city values('002', 'shanghai'); insert into city values('003', 'shenzhen'); 有兩個表:student & city,現在需要取出 city.name 來更新 student.city_name。兩表關聯條件是 student.city_code=city.code。 update
student s, city c set s.city_name = c.name where s.city_code = c.code;
也可以試下面的相關子查詢: update student s set city_name = (select name from city where code = s.city_code);