У меня есть таблица как:
CREATE TABLE tbl_temp (id serial, friend_id int, name varchar(32));
Я бы хотел запустить следующий SQL:
PREPARE x AS SELECT {$1,friend_id} FROM tbl_temp WHERE id = ANY($2);
EXECUTE x(33, ARRAY[1,2,3,4])
Я в основном ищу оператор, который вернет мне массив из двух int, первый из которых будет вводиться пользователем, а второй будет из столбца таблицы, например friend_id
.
Это действительно возможно в PostgreSQL ?
Результаты SELECT ($ 1, friend_id) FROM tbl_temp;
EXECUTE x(44);
row
--------
(44,1)
(44,2)
(44,3)
(3 rows)
Если я использую PQgetvalue (PGres, 0, 0)
, как будет выглядеть результат: {44,45 }
или подобное (44,45)
?