У меня есть 2 таблицы A и B в Oracle 11g. Таблица B содержит те же данные, что и таблица A, но с дополнительным столбцом ROWID, который является ROWID таблицы A.
Я собираюсь изменить значения столбца, например, colx в таблице B. И затем обновить colx в таблице A путем объединения таблицы A и таблицы B с ROWID.
Теперь ROWID закодирован. Должен ли я преобразовать ROWID в char? Как выполнить соединение между таблицей A и таблицей B, если одна из них является столбцом, а другая - псевдоколонкой Oracle ROWID.
UPDATE tablea ta
SET (colx) = (SELECT colx FROM tableb tb WHERE ta.rowid = tb.rowid)
WHERE EXISTS (
SELECT 1
FROM tableb tb
WHERE ta.rowid = tb.rowid )