DB2更新前N條記錄

由於DB2中沒有類似Oracle中的rownum函數,Sql Server中的top關鍵字,MySql中的limit關鍵字,所有需要曲線救國

示例代碼如下:

方法1:

UPDATE TableA SET field1='value' WHERE id IN

  (
     SELECT id FROM( SELECT ROW_NUMBER() OVER() AS num,id FROM TableA ) ss WHERE num>=1 AND num<=100
   )

 

其中OVER() 中可以增加排序,如:OVER(Order By id)

 

方法2:將查詢語句作爲臨時表再更新

 

UPDATE  (SELECT SYN_TIME FROM INTERFACE_STATUS FETCH FIRST 100 ROWS ONLY)  A  
SET A.SYN_TIME='2010-10-10 00:00:00'

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章