zoukankan      html  css  js  c++  java
  • DB2删除数据时的小技巧

        大家对如何删除数据都不陌生,我们习惯性的这么写:

    DELETE FROM <TABLE_NAME> WHERE <CONDITION>;  
    

       

    其实这么写性能并不好,尤其是删除大量数据的时候,要想获得更好的性能,可以采用如下方式:

    DELETE FROM  
    (  
    SELECT * FROM <TABLE_NAME> WHERE <CONDITION> 
    );  
    

      

    那如果要把一个表的所有数据都删除了,该怎么办?有人可能会说,这简单啊,把WHERE子句去掉不就可以了。回答正确,这是一种方法。当数据量很大时,删除数据需要很长时间,有人可能会采用先DROP TABLE,然后CREATE TABLE的方式,这是第二种方法。这样处理虽然很快,但是比较麻烦。其实还有第三种方法,更快、更简单,如下:

    ALTER TABLE <TABLE_NAME> ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE  
    

       

    郑重申明,使用以上语句后,对表的操作将不会记录日志,恢复的时候可能有问题,所以特别适合临时表。以上语句要慎重使用,出现任何后果本人概不负责。当然,还有其他方法,但那不是SQL了,是DB2的命令,我们这里就不介绍了。

    转载:http://blog.csdn.net/shangboerds/article/details/4594144

  • 相关阅读:
    xhr
    原生js的博客
    webstorm调试Node的时候配置
    multiparty
    bluebird
    Nodejs+express+angularjs+mongodb
    mustache.js
    ModelProxy 前端接口配置建模框架
    浏览器跨域访问解决方案
    前端性能优化补充篇
  • 原文地址:https://www.cnblogs.com/halo/p/3428542.html
Copyright © 2011-2022 走看看