To loop through all tables in a schema called "myschema", in a database called "proddb01" you can put the following in a script called "find_rows.sh":
for a in `echo "\t \dt+ myschema.*" | psql proddb01 | awk -F '[|]' '{ print $2 }'`; do
echo "SELECT relname, reltuples::BIGINT AS estimate FROM pg_class WHERE relname='$a';" | psql proddb01
done
chmod 755 find_rows.sh
./find_rows.sh
Example output:
relname | estimate
----------------------------+----------
table1 | 0
(1 row)
relname | estimate
------------------------------+----------
table2 | 65525596
(1 row)
relname | estimate
-----------------------+-----------
table3 | 153588080
(1 row)
relname | estimate
--------------------+----------
table4 | 1
(1 row)
No comments:
Post a Comment