SQL里怎么用UPDATE更新大量SELECT数据?
2个回答
展开全部
QL update select语句
最常用的update语法是:
UPDATE <table_name>
SET <column_name1> = <value>, SET <column_name2> = <value>
如果我的更新值Value是从一条select语句拿出来,而且有很多列的话,用这种语法就很麻烦
第一,要select出来放在临时变量上
第二,再将变量进行赋值。
具体的语法如下:
UPDATE <table_name> <alias>
SET (<column_name>,<column_name> ) = (
SELECT (<column_name>, <column_name>)
FROM <table_name>
WHERE <alias.column_name> = <alias.column_name>)
WHERE <column_name> <condition> <value>;
展开全部
举例: 有两张表t1, t2 这两张表通过id字段关联。
t1 t2
id a id b
1 beijing 1 北京
2 shanghai 2 上海
3 guangzhou 3 广州
把t1表的a字段,更新为对应的t2表的b字段,可以使用以下语法
update t1 set t1.a = (select t2.b from t2 where t1.id = t2.id)
where exists (select 1 from t2 where t1.id = t2.id)
t1 t2
id a id b
1 beijing 1 北京
2 shanghai 2 上海
3 guangzhou 3 广州
把t1表的a字段,更新为对应的t2表的b字段,可以使用以下语法
update t1 set t1.a = (select t2.b from t2 where t1.id = t2.id)
where exists (select 1 from t2 where t1.id = t2.id)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询