数据库SQL语句的update如何使用?关联表更新

在数据库的操作中,更新数据,是很常见的环境。好比,明细表中稀有量和单价栏位,想要更新到金额栏位,以及将总金额汇总到合计表中去,都需要利用update语句

东西/原料

  • sqlserver

方式/步调

  1. 1

    建立一个姑且表,用于演示sqlserver语法中update更新点窜利用方式

    IF OBJECT_ID('tempdb..#tblUpdate') IS NOT NULL DROP TABLE #tblUpdate; 

    CREATE TABLE #tblUpdate(

        Code varchar(50),        

        Num int,

        Price int,

        Total int    

    );

  2. 2

    建立别的一个姑且表,用于演示若何将一个姑且表的数据更新到别的一个姑且表

    IF OBJECT_ID('tempdb..#tblTotal') IS NOT NULL DROP TABLE #tblTotal; 

    CREATE TABLE #tblTotal(

        Code varchar(50),        

        Total int   

    );

  3. 3

    往姑且表中插入几行测试数据,此中的Total栏位都不插入值

    insert into #tblUpdate(Code, Num, Price) values('Code1', 30, 1);

    insert into #tblUpdate(Code, Num, Price) values('Code2', 40, 2);

    insert into #tblTotal(Code) values('Code1');

    insert into #tblTotal(Code) values('Code2');

  4. 4

    查询姑且表中的测试数据

    select * from #tblUpdate;

    select * from #tblTotal;

  5. 5

    利用update更新姑且表#tblUpdate中的Total成果,假设Total = num * price

    update #tblUpdate

    set Total = Num * Price

  6. 6

    再次查询姑且表#tblUpdate的成果,可以看到之前为NULL的Total列都有值了

    select * from #tblUpdate;

  7. 7

    若是要将姑且表#tblUpdate的total栏位值,更新光临时表#tblTotal对应的total栏位,就可以利用下面的体例

    update t

    set t.Total = u.Total

    from #tblTotal t

    left join #tblUpdate u on u.Code = t.Code

  8. 8

    查询更新后的成果,可以看到两个姑且表中Code不异的记实,total值也不异了

    select * from #tblUpdate;

    select * from #tblTotal;

  • 发表于 2019-05-28 20:15
  • 阅读 ( 2096 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具