SQL 连表更新
Posted 老糖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 连表更新相关的知识,希望对你有一定的参考价值。
现在数据如下:
需求如下:
要求 更新 Earnings 表中的Earnings字段 当 Table_2 KPI 大于等于1时 Earinings = KPI* 2000,否则等于 KPI* 1500
1 Update Earnings 2 set Earnings = ( 3 SELECT 4 CASE WHEN TABLE_2.KPI >= 1 5 THEN Table_2.KPI * 2000 6 ELSE Table_2.KPI * 1500 7 END 8 FROM Table_2 WHERE Table_2.GId = Earnings.Id)
结果如下:
注: 子查询里的结果必须唯一,否则出错; 可以根据需求 添加DISTINCT
1 Update Earnings 2 set Earnings = ( 3 SELECT DISTINCT 4 CASE WHEN TABLE_2.KPI >= 1 5 THEN Table_2.KPI * 2000 6 ELSE Table_2.KPI * 1500 7 END 8 FROM Table_2 WHERE Table_2.GId = Earnings.Id)
以上是关于SQL 连表更新的主要内容,如果未能解决你的问题,请参考以下文章