У меня есть таблица со столбцом коллекции. Я хочу сделать выборку, которая возвращает несколько целых чисел и поместить результат в этот столбец коллекции, однако я не могу найти синтаксис, чтобы сделать это через SQL. Я сделал это, написав процедуру SQL, которая делает то же самое (помещает результаты SELECT в переменную SET и возвращает переменную), однако я пытаюсь сделать то же самое без функций. Можно ли это сделать?
Сначала я создаю временную таблицу:
CREATE TEMP TABLE table1 (
id INTEGER
, col2 SET(INT NOT NULL)
)
Затем я заполняю его данными испытаний:
INSERT INTO table1 (id) VALUES (1);
INSERT INTO table1 (id) VALUES (2);
А теперь это работает:
UPDATE table1 SET col2 = SET{1,2};
... но я пытаюсь сделать это, и это не работает:
UPDATE table1 SET col2 = (SELECT id FROM table1) WHERE id = 1;
Возвращает эту ошибку:
[Error Code: -9632, SQL State: IX000] Value does not match the type of column (col2).