zoukankan      html  css  js  c++  java
  • 大数据量更新/删除模板

    如果有大批量的数据要进行删除或者更新,那么使用一个循环来操作,具体模板如下:

    DECLARE
        @rows int,
        @rows_limit int,
        @row_batch int,
        @row_count int
    ;

    SELECT
        @rows = 0,
        @rows_limit = 记录数,
        @row_batch = 轮询记录数,       -- 每批处理的记录数
        @row_count = @row_batch
    ;

    WHILE @row_count = @row_batch
        AND @rows < @rows_limit
    BEGIN;
    /*------operation statement------
        --DELETE
        DELETE TOP(@row_batch) SRC
        FROM source_table SRC       -- 源表
        WHERE yourcondition = 1        -- 记录处理条件
        
        --UPDATE
        UPDATE TOP(@row_batch) SRC 
            SET SRC.field='
        FROM source_table SRC       -- 源表
        WHERE SRC.field is NULL        -- 记录处理条件
    ---------operation statement-----
    */
        
        SELECT
           @row_count = @@ROWCOUNT,
           @rows = @rows + @row_count
        ;
        
        WAITFOR DELAY '00:00:10';   -- 每批处理之间的延时

    END;  


  • 相关阅读:
    centos6.4下django1.11.3项目的部署
    inner join和left join 、right join 的区别?
    php中的对象赋值
    windows下Call to undefined function curl_init() error问题
    include和require的区别误区
    第一车网笔试题
    借贷宝笔试题
    40斤西瓜3人分,求分法
    走楼梯算法
    ip地址分类
  • 原文地址:https://www.cnblogs.com/jeriffe/p/2254936.html
Copyright © 2011-2022 走看看