用一个表中的字段去更新另外一个表中的字段, MySQL 中有相应的 update 语句来支持,不过这个 update 语法有些特殊。看一个例子就明白了。
CREATE TABLE student(
student_id int NOT NULL ,
student_name VARCHAR(30) NOT NULL ,
city_code VARCHAR(10) NULL ,
city_name VARCHAR(50) NULL
);
INSERT INTO student VALUES(1 , 'john' , '001' , NULL);
INSERT INTO student VALUES(2 , 'nick' , '002' , NULL);
CREATE TABLE city(
CODE VARCHAR(10) NOT NULL ,
NAME VARCHAR(50) NOT 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。
(1)方案一
UPDATE student s ,
city c
SET s.city_name = c. NAME
WHERE
s.city_code = c. CODE;
(2)方案二、也可以试下面的相关子查询:
UPDATE student s SET city_name =( SELECT NAME FROM city WHERE CODE = s.city_code);
参考:
https://www.cnblogs.com/nsw2018/p/6398020.html
用一个表中的字段去更新另外一个表中的字段, MySQL 中有相应的 update 语句来支持,不过这个 update 语法有些特殊。看一个例子就明白了。CREATE TABLE student( student_id int NOT NULL , student_name VARCHAR(30) NOT NULL , cit...
如下所示:
update
table1 as z left join table2 as zb on z.zcatId = zb.zcatId set z.zcatName = zb.zcatName where z.zcatName is null;
以上这篇
mysql
更新
一个
表
里的字段等于另
一个
表
某字段的值实例就是小编分享给大家的全部内容了,希望能给大家
一个
参考,也希望大家多多支持软件开发网。
您可能感兴趣的文章:Sql查询
MySql
数据库中的
表
名和描述
表
中字段(列)信息Python中模块py
mysql
查询结果后如何获取字段列
表
MySQL
update
student_info s
set class_name = (select class_name from class_info where class_id = s.class_id)
【结果】:通过
关联
字段
关联
上的数据,内容相应
更新
;没
关联
上的,内容变为null。
MySQL
两张
表
关联
更新
用一张
表
的数据
更新
另一张
表
的数据
UPDATE
ars_room A JOIN ars_room_copy1 B
ON A.room_id=B.room_id
SET A.room_name=B.room_name,A.hospital_id=B.hospital_id
WHERE A.room_id='2'
@[TOC]oracle
两表
关联
update
的两个方法
oracle
两表
关联
update
的两个方法
条件:有
表
1和
表
2,
表
1有字段A,字段B,A为主键,
表
2也有字段A(不是主键),还有字段C,我希望把
表
1的字段B赋给
表
2的C字段。
两种方法:
– 方法1.
UPDATE
表
2
表
2.C = (SELECT B FROM
表
1 WHERE
表
1.A =
表
2.A)
WHERE
EXISTS ( SELECT 1 FROM
表
1 WHERE
表
1.A =
表
2.A)
请将 "新
表
名" 替换为要插入数据的新
表
的名称,将 "原
表
名" 替换为要复制数据的原始
表
的名称。此语句将从原始
表
中选择所有行,并将它们插入到新
表
中。如果要选择特定的列,可以在SELECT语句中指定它们。例如,如果要选择列名为"列1"和"列2"的列,可以使用以下语句:
```SQL
INSERT INTO 新
表
名 (列1, 列2)
SELECT 列1, 列2 FROM 原
表
名;
注意,如果新
表
已经存在,并且您希望在插入之前清空新
表
中的数据,可以使用TRUNCATE TABLE语句:
```SQL
TRUNCATE TABLE 新
表
名;
INSERT INTO 新
表
名
SELECT * FROM 原
表
名;
这将删除新
表
中的所有数据,并插入原始
表
的所有行。