У меня есть список 3k ID в текстовом файле. Я должен найти строки с такими идентификаторами и обновить их. я ожидал бы что-то работать, какОбновление DB2 z/OS по списку
WITH RECORD_ID
(ID) AS (
'12345',
...
'32134')
UPDATE MY_TABLE T
SET T.NAME = REPLACE(T.NAME, X'03', '')
WHERE EXISTS (SELECT 1 FROM RECORD_ID R WHERE R.ID = T.ID);
Но это не работает. Есть идеи?
«Не работает» как? Я не знаком с версией z-os, но CTE не работает в моей i-os DB2. Если вы строите CTE, почему бы просто не поместить список идентификаторов в предложение 'IN (...)'? –
Я думал, что IN будет очень медленным, если у вас есть список с 3000 записей. И искали более быстрое обновление. – Ruslan