| От | Frank Bax |
|---|---|
| Тема | Re: count the number of rows in tables |
| Дата | |
| Msg-id | 48AD7F5C.8090209@sympatico.ca обсуждение исходный текст |
| Ответ на | count the number of rows in tables ("A B" <gentosaker@gmail.com>) |
| Список | pgsql-novice |
A B wrote:
> I'd like to fill this table
>
> foo (name varchar(100), rows integer);
>
> with the number of rows for each table that my account has access to.
> But EXECUTE with SELECT ... INTO is not yet implemented.
> So how do I re-write this function?
>
> create or replace function countrows() RETURNS void AS $$
> DECLARE
> rec RECORD;
> nr INTEGER;
> BEGIN
> FOR rec IN SELECT tablename FROM pg_tables WHERE tableowner='myaccount'
> LOOP
> EXECUTE 'SELECT count(*) INTO nr FROM '||rec.tablename;
> EXECUTE 'INSERT INTO foo (name,rows) VALUES ('||rec.tablename||','||nr||')';
> END LOOP;
> END;
> $$ LANGUAGE plpgsql;
>
insert into foo (name,rows) (select 'employee',count(*) from employee);
В списке pgsql-novice по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера