sqlserver 多表更新/关联更新update详解

作者:袖梨 2022-06-29

反复尝试多次,最后得出结论,sqlserver 多表关联update 时,外部的表 不能加 as 别名,会报语法错误.

只可以写 表名做前缀来引用 不能 用别名 引用。

语法可以参考下面


update A SET 字段1=B表字段表达式, 字段2=B表字段表达式   from B WHERE    逻辑表达式

例如:

 代码如下 复制代码

UPDATE dbo.Table2

SET dbo.Table2.ColB = dbo.Table2.ColB + dbo.Table1.ColB

FROM dbo.Table2

INNER JOIN dbo.Table1

ON (dbo.Table2.ColA = dbo.Table1.ColA);


演示例子一如下:

统计当月业务系统某个业务员的收入总和,更新到业务员表中

 代码如下 复制代码

update user set user.money=yeji_as.full_money from
(
  select sum(day_money) as full_money,user_id from yewu where yewu_date='201205' group by user_id  
) as yeji_as where yeji_as.user_id=user.user_id

相关文章

精彩推荐