工作中遇到需要将一个表中的数据按照对应规则填入别的表中的情况
例如
表1 a
a1 a2
11 90889
32 31241
12 52123
表2 b
b1 b2
11
12
13
其中a1与b1是同一个字段(比如存的都是姓名)
a2与b2是同一字段
需求:现在需要通过a1,b1将a2导入到b2中
条件:a1,b1一一对应,且每一条a1都有对应b1与之对应
例句子查询方式
update
balancesheet b
set
b.cs=
(
select stockCode from company c
where c.id=b.comid
)
联合查询方式
update
balancesheet b
inner join
company c on c.id=b.id
set
b.cs=c.stockCode;
--实战使用 还做了时间转换
UPDATE
bs_version v
JOIN bs_test t
ON v.id = t.`version_id` SET v.plan_release_time = STR_TO_DATE(
CASE
WHEN t.`plan_time` = 'NULL'
THEN NULL
ELSE t.`plan_time`
END,
'%Y/%m/%d'
)