У меня есть таблица с 28 миллионами строк, которые я хочу обновить.В нем около 60 столбцов и столбец идентификатора (первичный ключ) с созданным на нем индексом.Я создал четыре новых столбца и хочу заполнить их данными из четырех столбцов другой таблицы, в которой также есть столбец идентификатора с индексом, созданным на нем.Обе таблицы имеют одинаковое количество строк и только первичный ключ и индекс в столбце IDENTI.Запрос выполняется в течение 15 часов, и, поскольку он является приоритетным, мы начинаем нервничать по этому поводу, и у нас не так много времени, чтобы экспериментировать с запросами.Мы никогда не обновляли такую большую таблицу (7 ГБ), поэтому не уверены, что это нормальное время.
Это запрос:
UPDATE consolidated
SET IDEDUP2=uni.IDEDUP2
USE21=uni.USE21
USE22=uni.USE22
PESOXX2=uni.PESOXX2
FROM uni_group uni, consolidated con
WHERE con.IDENTI=uni.IDENTI
Как мне сделатьэто быстрее?Является ли это возможным?Если нет, есть ли способ проверить, сколько времени это займет (без прерывания процесса)?
Так же, как дополнительная информация, мы выполнили гораздо более сложные запросы для 3 миллионов таблиц строк (postgis).) и это заняло около 15 часов.