zoukankan      html  css  js  c++  java
  • 利用带关联子查询Update语句更新数据

          Update是T-sql中再简单不过的语句了,update table set column=expression  [where condition],我们都会用到。但update的用法不仅于此,真正在开发的时候,灵活恰当地使用update可以达到事半功倍的效果。

          假定有表Table1(a,b,c)和Table2(a,c),现在Table1中有些记录字段c为null,要根据字段a在Table2中查找,取出字段a相等的字段c的值来更新Table1。一种常规的思路,通过游标遍历Table1中字段c为null的所有记录,在循环体内查找Table2并进行更新,即用游标Cursor的形式。测试sql语句如下:

    使用游标遍历方式更新

     
         虽然用游标可以实现,但代码看起来很复杂,其实用Update根据子关联来更新只要一条语句就可以搞定了,测试代码如下:

    使用带关联子查询的Update更新
  • 相关阅读:
    BZOJ2784: [JLOI2012]时间流逝
    JZOJ 5190. 景中人 (找性质+dp+记忆化实现)
    [NOI2013] 向量内积(随机好题)
    【NOI2014】购票(斜率优化dp+树链剖分)
    「NOI2016」国王饮水记(猜结论+动态规划+斜率优化)
    「NOI2016」网格(猜结论+tarjan找桥点+乱搞)
    Codeforces 1270 H. Number of Components(找性质+线段树)
    Codeforces 1276D. Tree Elimination(树形dp)
    Codeforces 1158 F. Density of subarrays(找性质+分段dp)
    Codeforces 960G Bandit Blues (快速求第一类斯特林数)
  • 原文地址:https://www.cnblogs.com/Jessy/p/3133928.html
Copyright © 2011-2022 走看看