Дайте массив так:Как вставить элементы массива в PostgreSQL таблицу
my_array = [2,3,5,23,4]
и таблицу, как это:
column1 | column2
---------+----------
1 |
2 |
3 |
4 |
5 |
Как я могу вставить массив значений в таблицу. Грубо говоря, я хочу сделать что-то подобное с SQL:
for item in my_array:
UPDATE my_table SET colum2 = item
Обновленная таблица должна быть, как это
column1 | column2
---------+----------
1 | 2
2 | 3
3 | 5
4 | 23
5 | 4
UPDATE: Я использую Python psycopg2, но мне интересно, если есть способ, с чистый SQL.
Вы хотите добавить весь массив в один столбец или в отдельный столбец или в отдельную строку –
Какой язык программирования вы используете? Как вы определили этот массив на своем языке? Что делать, если массив имеет более или менее элементы, чем у вас есть строки в таблице? Является ли позиция индекса элемента всегда равной значению в 'column1'?(Помните: строки в реляционной таблице *** не сортируются ***, поэтому вы не можете сопоставлять элементы массива в строки таблицы по «позиции») –
Я использую Python с psycopg2, но мне интересно, могу ли я сделать это с чистым SQL. Массив всегда будет иметь такое же количество элементов, как строки в таблице. Я буду использовать параметр stat, чтобы обеспечить правильное значение массива в правой строке. – ustroetz