DB2 中刪除資料

來源:互聯網
上載者:User

----start

    大家對如何刪除資料都不陌生,我們習慣性的這麼寫:

DELETE FROM <TABLE_NAME> WHERE <CONDITION>; 

其實這麼寫效能並不好,尤其是刪除大量資料的時候,要想獲得更好的效能,可以採用如下方式:

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

那如果要把一個表的所有資料都刪除了,該怎麼辦?有人可能會說,這簡單啊,把WHERE子句去掉不就可以了。回答正確,這是一種方法。當資料量很大時,刪除資料需要很長時間,有人可能會採用先DROP TABLE,然後CREATE TABLE的方式,這是第二種方法。這樣處理雖然很快,但是比較麻煩。其實還有第三種方法,更快、更簡單,如下:

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

鄭重申明,使用以上語句後,對錶的操作將不會記錄日誌,恢複的時候可能有問題,所以特別適合暫存資料表。以上語句要謹慎使用,出現任何後果本人概不負責。當然,還有其他方法,但那不是SQL了,是DB2的命令,我們這裡就不介紹了。

 

---更多參見:DB2 SQL 精萃

----聲明:轉載請註明出處。

----last updated on 2009.12.4

----written by ShangBo on 2009.9.25

----end

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.