有沒有辦法輕鬆/優雅地更新表中的多個列,並使用Oracle 10g中的查詢的記錄值?Oracle 10g PL/SQL-選擇結果作爲更新列值
我有一個表(稱爲源),它有簡單起見,2列,ID
和KEY
。
trunc(ID/100) key1 key2 key3 key4 ..... key99 ------------- ---- ---- ---- ---- 0 1000 1000 5000 1000 1 8000 9000 7000 9000 2 5 5
的ID是:
ID Key ---- ---- 1 1000 2 1000 3 5000 4 1000 .. 101 8000 102 9000 103 7000 104 9000 ... 201 5 202 5 ...
我還有一個表需要trunc(ID/100)
並使用它作爲一個batchID
與列是爲在該批次中的ID鍵映射(稱之爲KeyMap
)創建並批量處理,所以在批處理結束時,我想調用存儲過程來更新KeyMap
表中的記錄,並使用新的Key
值更新1個更新語句中的記錄,並使用子選擇或集合來提供那些關鍵值。
這是可能的,什麼是最好/最有效的方法呢?
我對你的問題有不好的預感。看起來你正在尋找一種優雅的方式去做一些毫無意義的事情......但也許這只是你的例子被過分簡化了。 – 2009-06-16 19:08:20