Мне нужно провести некоторую корректирующую работу с моей базой данных, чтобы исправить некоторые ошибки в данных.У меня есть числовое поле в целевой таблице, которое мне нужно обновить до результатов основного запроса.Необходимо обновить около 30 000 строк.
Безуспешно пробовали несколько вариантов кода, описанного ниже.Я понимаю, что предоставленный код неверен, но я надеюсь, что вы, ребята, сможете из этого сделать вывод, чего я пытаюсь достичь.
UPDATE TARGETTABLE
SET NUMFIELD = IL1.NUMFIELD
(
SELECT IL1.ID, IL1.NUMFIELD FROM
(
SELECT H.ID, TRUNC(TO_CHAR(H.TIMEFIELD,'FF9')/1000000,'000')
"NUMFIELD" FROM HISTORIC_ALARM_LOG@REMOTETABLE
WHERE ID IN
(
SELECT ID FROM TARGETTABLE
WHERE (NUMFIELD = 0 OR NUMFIELD = 1)
AND TIMEFIELD BETWEEN TO_DATE('23 Apr 2019 00:00:00','DD MON YYYY
HH24:MI:SS') AND TO_DATE('25 Apr 2019 00:00:00','DD MON YYYY
HH24:MI:SS')
AND DATASOURCEID = 3
)
) IL1
)