Oracle如何把表中查询到的多条数据都显示在一条查询数据中

2025-03-26 00:21:32
推荐回答(1个)
回答1:

可用两种方法,一种是在oracle的系统表中统计,另一种需要写存储过程统计,方法分别如下。

1、系统表中统计:

1

SELECT sum(num_rows) FROM user_tables;

结果:

2、存储过程统计,代码如下:


declarev_tName varchar(50);v_sqlanalyze varchar(500);v_num number;v_sql varchar(500);cursor c1 isselect table_name from user_tables;beginopen c1;loopfetch c1 into v_tName;if c1%found then v_sqlanalyze :='analyze table  '||v_tName||'  estimate statistics';execute immediate v_sqlanalyze;v_sql := 'select NUM_ROWS  from user_tables where table_name =upper('''||v_tName||''')'; execute immediate v_sql into  v_num;dbms_output.put_line('表名: '||v_tName||' 行数: '||v_num);elseexit;end if;end loop;end;

统计结果: