Когда я выполняю приведенный ниже запрос в DB2, он не удаляет данные сразу.
У меня есть 800 записей, и каждые 2 записи дублируются, и я хочу удалить 1 запись из 2 записей, чтобы в БД оставалось 400 записей.
Ниже приведен пример RESERVATION_NUMBER.
DELETE
FROM reservation_number
WHERE reservation_id IN (SELECT reservation_id
FROM (SELECT ROW_NUMBER()
OVER() AS RN,
msr1.reservation_number,
msr1.reservation_id,
msr1.used_flag
FROM reservation_number msr1,
reservation_number msr2
WHERE
msr1.reservation_number = msr2.reservation_number
AND msr1.reservation_id <> msr2.reservation_id
ORDER BY msr1.reservation_number)
WHERE Mod (rn, 2) = 0
ORDER BY reservation_number)
Этот запрос удаляет полные данные, если я выполняю их несколько раз.Данные удаляются следующим образом -
400, 168, 076, 038, 019, 003, 001