Oracle – Table Row count for all tables
Here is a simple SQL script with the help we can find the Table Row count for all tables.
Yes we can find the row count using select count(*) for each table. This will be useful if you large number of tables are there in your database.
Example Script:
-- Create a table CREATE TABLE ROW_COUNT_ALL_TABLE ( TABLE_NAME VARCHAR2(100), ROW_COUNT VARCHAR2(100) )
-- PL-SQL Block to count Row Count for all tables as you specify
DECLARE 
V_ROW_COUNT      VARCHAR2(100);
V_SQL_STRING     VARCHAR2(1000);
BEGIN
FOR X IN ( SELECT OBJECT_NAME FROM ALL_OBJECTS  
WHERE OBJECT_TYPE = 'TABLE' AND  OWNER = 'SCOTT' 
AND OBJECT_NAME != 'ROW_COUNT_ALL_TABLE' )
LOOP 
    V_SQL_STRING := 'SELECT COUNT(*) FROM  ' ||X.OBJECT_NAME;
    EXECUTE IMMEDIATE V_SQL_STRING INTO V_ROW_COUNT;     
    INSERT INTO ROW_COUNT_ALL_TABLE VALUES (X.OBJECT_NAME, V_ROW_COUNT);
    COMMIT;
END LOOP;
END;
Required Result as

