#sql #db2
#sql #db2
Вопрос:
Я пытаюсь обновить тысячу или около того строк в таблице DB2, используя списки значений в электронной таблице Excel. Электронная таблица содержит три основных столбца данных, два из которых определяют, какая строка в таблице необходима, а третья строка в электронной таблице соответствует неправильным записям в таблице базы данных, которые необходимо обновить. Я могу легко определить и выбрать соответствующие строки, однако я не уверен, как обновить эти строки из списка значений.
Таблица:
... ID_1 ID_2 STATUS ...
1234 2345 A
4321 5423 B
Электронная таблица:
ID_1 ID_2 STATUS
1234 2345 B
4321 5423 A
Для выбора записей я скопировал столбцы с листа Excel, добавил апострофы и запятые и использовал
where id_1 in ('ID_1_a','ID_1_b'.....'ID_1_xxx')
То же самое для второго идентифицирующего столбца (ID_2). Могу ли я как-то использовать это обозначение для обновления из списка состояний? Электронная таблица содержит другие лишние столбцы, и это не единственные столбцы в таблице.
Ответ №1:
Это делает то, что, я думаю, вы хотите сделать:
Поместите формулу в ячейку D2 (если электронная таблица точно такая, как у вас там)
="update table set status='" amp; c2 amp; "' where id_1 = '"amp; a2 amp; "' and ID_2 = '" amp; b2 "'"
затем скопируйте это в электронную таблицу.
Это генерирует инструкции SQL, которые затем вы можете запускать в своей базе данных.
Комментарии:
1. Я пытаюсь обновить таблицу базы данных, а не электронную таблицу. Электронная таблица здесь является просто источником данных, если я не неправильно понял ваш ответ…
2. Я обновил свой ответ, чтобы рассказать, что вы делаете с электронной таблицей.