EXECUTE query INTO table

Hi,

Ist es möglich das ergebnis eines dynamischen sql-befehls mit execute in einer tabelle zu speichern oder geht das nur mit record- und rowtypevariablen.
Wenn das nicht möglich ist: Wie frage ich eine record- oder rowtypevariable mit einer query ab?
“SELECT * FROM recname” funktioniert hier nämlich nicht.

Jayni



test=# create table foo (a int, b int, c int);
CREATE TABLE
Time: 0,731 ms
test=*# create function jayni() returns setof foo as $$begin return query execute 'select 1,2,3'; end; $$ language plpgsql;
CREATE FUNCTION
Time: 0,439 ms
test=*# create table blafasel as select * from jayni();
SELECT 1
Time: 1,220 ms
test=*# select * from blafasel ;
 a | b | c
---+---+---
 1 | 2 | 3
(1 row)



oder geht das nur mit record- und rowtypevariablen.
Wenn das nicht möglich ist: Wie frage ich eine record- oder rowtypevariable mit einer query ab?
“SELECT * FROM recname” funktioniert hier nämlich nicht.

Hä?

Andreas

Ich würde das gerne innerhalb einer Funktion machen.
Ich das Ergebnis einer Query nochmal abfragen

So hab ich mir das vorgestellt

v_query := 'SELECT col FROM table WHERE LENGTH(dede) BETWEEN x AND y AND plainto_tsquery(string') @@ vectors';
EXECUTE v_query INTO v_rec;
v_query :=	'SELECT levenshtein('string', v_rec.col) AS lev WHERE levenshtein('string', v_rec.col) < 10'
EXECUTE v_query INTO v_rec2;

sorry wenns bisschen umständlich ist, ich kanns noch nicht besser

Jayni