| От | A B |
|---|---|
| Тема | count the number of rows in tables |
| Дата | |
| Msg-id | dbbf25900808210642v266c7049r2a9b7af7296674bc@mail.gmail.com обсуждение |
| Ответы |
Re: count the number of rows in tables
|
| Список | pgsql-novice |
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;
В списке pgsql-novice по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера