запрос результата функции, которая вставляет данные и возвращает набор идентификаторов - PullRequest
0 голосов
/ 18 января 2020

У меня есть функция plpg sql, которая возвращает таблицу со столбцом id и представляет все вставленные данные внутри функции. что-то вроде этого:

create or replace function se_initial_games("tournamentId_" bigint)
returns table(
  "gameId" bigint
) as $$
declare
  n_teams bigint;
begin
  return query
  insert into single_elimination_tournaments_games (team_one_id, team_two_id, tournament_id)
  (select ...) returning id;
end;
$$ language plpgsql;

Возвращает результаты при запуске

select "gameId" from se_initial_games(1);

, но не, если я использую его в подзапросе, например:

select g.* from games g where g.id in (select "gameId" as id from se_initial_games(1));

Что-то говорит Результаты функции me после прочтения таблицы игр.

Проблема заключается в том, что результаты запроса select g.* from games g g.id не включают вновь вставленные идентификаторы из in подзапроса.

Я закончил писать 2 запросы для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...