Re: FOR-LOOP durch eine Ergebnismenge

From: Andreas Kretschmer <akretschmer(at)spamfence(dot)net>
To: pgsql-de-allgemein(at)postgresql(dot)org
Subject: Re: FOR-LOOP durch eine Ergebnismenge
Date: 2013-03-29 18:05:32
Message-ID: 20130329180532.GA12257@tux
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

Martin Spott <Martin(dot)Spott(at)mgras(dot)net> wrote:

>
> CREATE OR REPLACE FUNCTION testproc()
> RETURNS void
> AS $$
> DECLARE
> layer record;
> BEGIN
> FOR layer IN SELECT f_table_name FROM geometry_columns WHERE f_table_name LIKE 'clc06_sand'
> LOOP
> SELECT * FROM layer;

Dat geht so ned !

Du hast da nun eine Variable namens layer, diese enthält einen TEXT.
Damit frickelst Dir nun einen größeren TEXT zusammen und machts ein
EXECUTE:

execute 'select * from ' || layer || ';';

*untested*

Siehe Doku unter dynamisches SQL

Andreas
--
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect. (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly." (unknown)
Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889°

In response to

Responses

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Martin Spott 2013-03-29 20:35:52 Re: FOR-LOOP durch eine Ergebnismenge
Previous Message Martin Spott 2013-03-29 17:47:36 FOR-LOOP durch eine Ergebnismenge