extend INSERT by 'INSERT INTO table FETCH ... FROM cursor' syntax

Поиск
Список
Период
Сортировка
От Alexander Vlasenko
Тема extend INSERT by 'INSERT INTO table FETCH ... FROM cursor' syntax
Дата
Msg-id 200310240000.00608.intrnl_edu@ilyichevsk.odessa.ua
обсуждение исходный текст
Ответы Re: extend INSERT by 'INSERT INTO table FETCH ... FROM cursor' syntax  (Christoph Haller <ch@rodos.fzk.de>)
Список pgsql-sql
Please CC me, I am not subscribed.

An imaginary SQL statement
INSERT INTO table FETCH ... FROM cursor;
looks almost the same as currently available
INSERT INTO table SELECT ...;

I tried it because I needed to insert a row in a table
after I DELETEd a set of rows, something like this:

BEGIN;
DECLARE total CURSOR
 FOR SELECT
  SUBSTR(datetime,1,7)||'-01 00:00:00' as month,
  client,
  SUM(money)
 FROM stat
 WHERE SUBSTR(datetime,1,7)='2003-10'
 GROUP BY month,client;
DELETE FROM stat WHERE SUBSTR(datetime,1,7)='2003-10';
INSERT INTO stat FETCH ALL FROM total;
COMMIT;

but it does not work, chokes on FETCH ALL.

I want to sum up all the money by month, delete all the rows
(possibly thousands of them) and insert one row per client
with monthly totals.

Obviously I cannot swap order of INSERT and DELETE here.

I hesitate to post this to pgsql-hackers@postgresql.org,
do I have to? ;)

--
Alexander Vlasenko

В списке pgsql-sql по дате отправления:

Предыдущее
От: Manuel Sugawara
Дата:
Сообщение: Re: Regular expression problem
Следующее
От: Csaba Nagy
Дата:
Сообщение: Re: [GENERAL] Alias-Error