Есть ли способ легко/элегантно обновить несколько столбцов в таблице со значениями записей из запроса в Oracle 10g?Oracle 10g PL/SQL- Выберите результаты как значения столбца обновления
У меня есть таблица (назовите ее источником), которая имеет для простоты сакэ, 2 столбца, ID
и KEY
.
ID Key ---- ---- 1 1000 2 1000 3 5000 4 1000 .. 101 8000 102 9000 103 7000 104 9000 ... 201 5 202 5 ...
У меня есть другая таблица (назовем его KeyMap
), который принимает trunc(ID/100)
и использует его в качестве batchID
с колонкой является ключевой картой идентификаторов в пределах партии:
trunc(ID/100) key1 key2 key3 key4 ..... key99 ------------- ---- ---- ---- ---- 0 1000 1000 5000 1000 1 8000 9000 7000 9000 2 5 5
Идентификационных являются созданный и обработанный партиями, поэтому по завершении пакетной обработки я хотел бы вызвать хранимую процедуру для обновления записи в таблице KeyMap
с новыми значениями Key
с 1 оператором обновления с использованием подвыборки или коллекции, предоставляющей эти ключевые значения.
Возможно ли это, и что является лучшим/наиболее эффективным способом сделать это?
У меня плохое предчувствие вашего вопроса. Кажется, вы ищете элегантный способ сделать что-то довольно бессмысленное ... но, возможно, просто ваш пример упрощен. –