需求:将excel表中的数据批量更新到 taccoinfo表中vc_broker字段
0、备份:
create table taccoinfo0724 as select vc_custno ,vc_broker from taccoinfo
1、创建临时表:
create table taccoinfo0724_1 as select vc_custno ,vc_broker from taccoinfo
WHERE 1=2
将附近列表信息导入taccoinfo0724_1临时表(如果数据不对,可以在最前列插入一空列,直接复制到表里面)
2、再次检查更新内容是否正确
SELECT
t1.vc_custno,
t1.vc_broker AS 原经纪人,
t2.vc_broker AS 待更新经纪人
FROM taccoinfo t1
JOIN taccoinfo0724_1 t2 ON t1.vc_custno = t2.vc_custno;
3、执行更新语句
MERGE INTO taccoinfo t1
USING taccoinfo0724_1 t2
ON (t1.vc_custno = t2.vc_custno)
WHEN MATCHED THEN
UPDATE SET t1.vc_broker = t2.vc_broker;
说明
MERGE INTO taccoinfo t1
:指定要进行操作(更新)的目标表为taccoinfo
,并给它一个别名t1
。USING taccoinfo0724_1 t2
:指定用于比较和获取数据的源表为taccoinfo0724_1
,并给它一个别名t2
。ON (t1.vc_custno = t2.vc_custno)
:设置连接条件,即当两个表中的vc_custno
字段值相等时,进行后续操作。WHEN MATCHED THEN UPDATE SET t1.vc_broker = t2.vc_broker
:当满足ON
条件时(即两表中有匹配的记录),执行更新操作,将目标表t1
中的vc_broker
字段值更新为源表t2
中对应的vc_broker
字段值。