統計乙個user的所有表分別有多少行

2021-08-25 10:55:10 字數 936 閱讀 9042

要求統計某使用者的所有表分別有多少行?當然,可以乙個乙個表的select count(1) from tablename,其實還有很多辦法:

1.用過程

新建乙個表tablecount,用來儲存結果。

create table tablecount(tablename varchar2(100) not null,colcount number(10) not null);

新建乙個過程sp_count。

create or replace procedure sp_count is

cursor counttable is

select 'insert into tablecount select count(*),''' || table_name || ''' from ' || table_name || '' str

from user_tables;

v_str varchar2(200);

begin

open counttable ;

loop

fetch counttable

into v_str;

exit when counttable%notfound;

-- v_str:='insert into tablecount(num) select count(*) from plan_table';

execute immediate v_str;

end loop;

close counttable;

end;

執行過程sp_count:

exec sp_count;

ok!

獲得乙個表的所有欄位名

場景 在除錯較為負責的儲存過程,需要經常select 當表字段較多,但有幾個字段確實不想見到它,以下就是方便了寫select語句 declare query varchar max declare name varchar 50 declare vacancy cursor local for se...

乙個有趣的統計

出於好玩的態度,我從4月起開始持續對我的部落格每日訪問情況在excel中做了個記錄,記錄的格式如下 今天頭腦中突然閃過乙個念頭,對週末和非週末的訪問情況做個統計,於是寫了個模組 sub statistic dim i as integer dim visitdatestr as string dim...

如何匯出Oracle乙個使用者中所有表的表結構

一 exp userid bx81 bx81 owner bx81 imp userid bx81 bx81 full y indexfile bx8.sql 注意著時imp並沒有真正寫入資料庫,而是將ddl寫在bx8.sql裡。二 用下面的指令碼可以生成某個使用者下的表的ddl語句 set arr...