sql >> Databasteknik >  >> RDS >> PostgreSQL

Spara utdata från en dynamisk fråga som använder refcursor i en tabell

Detta löses lättare än din tidigare fråga, eftersom vi inte får problem med dynamiska returtyper här. Du behöver bara sammanfoga frågesträngen korrekt innan du skickar den till EXECUTE .

För ett nytt bord :

DO
$$
BEGIN
EXECUTE 'CREATE TABLE mydaughtertable AS ' || myresult('dkj_p_k27ac','enri');
END
$$;

Där myresult(...) returnerar texten för en giltig SELECT uttalande.

För att lägga till i en befintlig tabell :

...
EXECUTE 'INSERT INTO TABLE mydaughtertable(<colum list>) '
      || myresult('dkj_p_k27ac','enri');
...

Om du vet resultattypen för frågan matchar tabellen kan du utelämna listan med målkolumner.




  1. tidsskillnad mellan två rader - mysql

  2. Fråga föräldrar och barn i självrefererande tabell

  3. Är det bättre att använda INNER JOIN eller FINNS för att hitta tillhörande flera i m2m relation?

  4. Hive 1.2 Metastore Service startar inte efter att ha konfigurerat den till S3-lagring istället för HDFS