Re: Fwd: Help with function

Поиск
Список
Период
Сортировка
От A. Kretschmer
Тема Re: Fwd: Help with function
Дата
Msg-id 20061004140052.GF21016@a-kretschmer.de
обсуждение исходный текст
Ответ на Fwd: Help with function  ("Chris Hoover" <revoohc@gmail.com>)
Список pgsql-general
am  Wed, dem 04.10.2006, um  9:31:28 -0400 mailte Chris Hoover folgendes:
> Here is my attempt at the function (note, this is a simple example that could
> obviously be done via a view, but I am trying to learn more about writing
> plpgsql functions):
>
> create or replace function dba.active_transactions_by_db() returns setof
> integer pg_stat_activity.datname%TYPE as
> $BODY$
> declare
>     dbName            varchar;
>     activeTransactions    integer;
>     countRec        record;
> begin
>     for countRec in select count(1) as cnt, datname from pg_stat_activity group
> by datname loop
>         return next countRec;
>     end loop;
>
>     return countRec;
> end;
> $BODY$
> language plpgsql;

I wrote for you this:

create or replace function active_transactions_by_db(out _cnt int, out _datname text) returns setof record as
$BODY$
declare
    dbName            varchar;
    activeTransactions    integer;
    countRec        record;
begin
    for countRec in select count(1) as cnt, datname from pg_stat_activity group by datname loop
        _cnt := countRec.cnt;
        _datname := countRec.datname;
        return next;
    end loop;

    return;
end;
$BODY$
language plpgsql;



It works.
If you want lern more about IN and OUT - Parameters, see:
http://people.planetpostgresql.org/xzilla/index.php?/archives/149-out-parameter-sql-plpgsql-examples.html#extended


HTH, Andreas
--
Andreas Kretschmer
Kontakt:  Heynitz: 035242/47215,   D1: 0160/7141639 (mehr: -> Header)
GnuPG-ID:   0x3FFF606C, privat 0x7F4584DA   http://wwwkeys.de.pgp.net

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

Предыдущее
От: "Chris Hoover"
Дата:
Сообщение: Fwd: Help with function
Следующее
От: Matthias.Pitzl@izb.de
Дата:
Сообщение: Re: Fwd: Help with function