@GeKskill

Массовое изменение значения у полей с определенным ID?

Допустим, есть файл содержащий множество строк с ID (txt или ещё какой). Как изменить значение одного из столбцов у строк с такими ID, при этом сильно не нагружая базу? Прочитал, что такое делают с помощью цикла, перебирая массив с ID... Как это сказывается на производительности?
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
@shushpanio
shushpanio
Update {что обновляем} where ID={условие для каких строк обновляем}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@dmitriy_dd
обработайте файл, создайте запрос типа
UPDATE test AS a SET
data = b.tmp_data,
info = b.tmp_info
FROM (VALUES
(1, '', ''),
(2, NULL, 'nothing'),
(3, 'update', 'with one request')
) AS b(tmp_id, tmp_data, tmp_info)
WHERE b.tmp_id = a.id;
и все зальется одним кусочком при вашем условии
хотя я заливаю отдельными запросами, хоть и трачу больше времени, но в результате ошибки, знаю ее точное место возникновения, и\или игнорирую вовсе..
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы