当前位置:数据库 > SQLServer >>

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

反复尝试多次,最后得出结论,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

补充:数据库,Mssql 
Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,