@Melnik228

Как вернуть строки, полученные из SELECT в процедуре?

CREATE PROCEDURE author_and_title (book_code integer)
LANGUAGE SQL
AS $$
SELECT author, title FROM books WHERE code = book_code;
$$;

вызываю как
CALL author_and_title(1);
и возвращается просто "CALL"

В MS SQL при вызове такой процедуры возвращалась выборка из процедуры
тут надо return использовать? или точнее INOUT параметр? но как в него таблицу тогда передавать?
  • Вопрос задан
  • 382 просмотра
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
PostgreSQL DBA
Может, вы всё-таки будете читать документацию к postgresql, а не к mssql? Или тогда уж оставайтесь с mssql.

https://www.postgresql.org/docs/current/xproc.html
A procedure is a database object similar to a function. The difference is that a procedure does not return a value, so there is no return type declaration.


Если вам не нужен transaction control изнутри процедуры - то вам вообще не нужны процедуры, а нужны обычные функции.
Ответ написан
Ваш ответ на вопрос

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

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