Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.10.2021, 13:12   #1
NatM
 
Регистрация: 01.10.2021
Сообщений: 9
По умолчанию Замена временных таблиц в PostrgSQL

Подскажите, пожалуйста, если кто-то сталкивался.
Пытаюсь заполнить и сделать upd ate из временной таблицы в PgrSQL.
Но из-за того что и сама temp строится путем выборки из нескольких таблиц с большим количеством данных, и таблицы t, f тоже состоят из сотен тысяч строк, медленно отрабатывает.

Как можно оптимизировать эту процедуру, чтобы она эффективно отрабатывала под нагрузкой? Может ли кто-то подсказать, как, например, встроить UPDATE по сегментам или есть какие-то еще более удачные решения?

-----------

CREATE OR REPLACE FUNCTION public.F() RETURNS void

AS $$

DECLARE
sql_str text;
begin
--Создание temp
sql_str := 'DR OP TABLE IF EXISTS Temp;
CREATE temporary TABLE Temp(
Field1 uuid,
Field2 uuid,
Field3 uuid,
Field4 uuid,
Field5 text,
Field6 text,
Field7 text,
Field8 text,
Field9 int,
Field10 int,
Field11 int,
Fiels12 int);';
execute sql_str;

--Заполнение temp
sql_str := 'ins ert into Temp
sel ect distinct on (-- перечень полей --
fr om t
left join c on t.id =c.uid
--объединение нескольких таблиц с десятками тысяч строк--
where --перечень нескольких условий--;
execute sql_str;

--Заполнение таблицы t на основе temp
sql_str := 'INS ERT IN TO public.t (--перечень полей--)
sele ct --перечень полей--
from Temp;
execute sql_str;

--Обновление таблицы f на основе temp
sql_str := 'UPDATE public.f
SE T --перечень полей--
fr om Temp
wh ere --перечень условий--;
execute sql_str;

return;
END;
$$ LANGUAGE plpgsql;
NatM вне форума Ответить с цитированием
Старый 25.10.2021, 15:34   #2
NatM
 
Регистрация: 01.10.2021
Сообщений: 9
По умолчанию

Закрываю вопрос. Вопрос отпал.
NatM вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Метод прогнозирования временных рядов Lustin_Aleks Помощь студентам 0 03.12.2013 21:25
Выставление временных периодов в OLAP. multiki Microsoft Office Excel 3 04.06.2013 11:09
Шумоподавление во временных рядах yaapelsinko Свободное общение 3 19.06.2012 20:41
прогнозирование временных рядов Tanyyyy C# (си шарп) 0 24.05.2012 17:19
Удаление временных объектов Kn793 Общие вопросы C/C++ 4 10.06.2010 23:22