Dette løses nemmere end dit tidligere spørgsmål, for vi kommer ikke i problemer med dynamiske returtyper her. Du skal blot sammenkæde forespørgselsstrengen korrekt, før du sender den til EXECUTE
.
Til et nyt bord :
DO
$$
BEGIN
EXECUTE 'CREATE TABLE mydaughtertable AS ' || myresult('dkj_p_k27ac','enri');
END
$$;
Hvor myresult(...)
returnerer teksten for en gyldig SELECT
erklæring.
For at tilføje til en eksisterende tabel :
...
EXECUTE 'INSERT INTO TABLE mydaughtertable(<colum list>) '
|| myresult('dkj_p_k27ac','enri');
...
Hvis du ved det resultattypen af forespørgslen matcher tabellen, kan du udelade listen over målkolonner.