Home  >  Article  >  Database  >  oracle查询所有表的记录数SQL

oracle查询所有表的记录数SQL

WBOY
WBOYOriginal
2016-06-07 15:13:151330browse

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 查询用户所有表的总记录数, 并按总记录数进行排序。 1、创建函数 Sql代码 create or replace function count_rows(table_name in varchar2, owner in varchar2 default null) return number auth

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

  查询用户所有表的总记录数, 并按总记录数进行排序。

  1、创建函数

  Sql代码

  create or replace function count_rows(table_name in varchar2,

  owner in varchar2 default null)

  return number

  authid current_user

  IS

  num_rows number;

  stmt varchar2(2000);

  begin

  if owner is null then

  stmt := 'select count(*) from "'||table_name||'"';

  else

  stmt := 'select count(*) from "'||owner||'"."'||table_name||'"';

  end if;

  execute immediate stmt into num_rows;

  return num_rows;

  end;

  2.然后通过计算函数进行统计

  Sql代码

  select table_name, count_rows(table_name)  nrows from user_tables order by nrows desc

oracle查询所有表的记录数SQL

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn