在我的数据库中,我想知道总行数。
我可以使用此查询找出数据库中某个表中的行数:
ref():
但是,是否有更多高效的方式,而不是为每个表重复此操作?
答案 0 :(得分:0)
您可以使用此pl/sql block
来了解所有表中的总行数。
DECLARE
t_name VARCHAR2(100);
total_rows NUMBER;
t_count NUMBER;
BEGIN
total_rows := 0;
t_count := 0;
FOR rec IN (SELECT table_name FROM user_tables)
LOOP
EXECUTE IMMEDIATE 'select count(1) from '||rec.table_name
INTO t_count;
total_rows := total_rows + t_count;
END LOOP;
dbms_output.put_line('Total no of Rows: '||total_rows);
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line(SQLERRM);
END;