我有一个返回我需要的表名的查询,例如
execute immediate 'select value from '|| select listagg(table_name, ', ') within group (order by table_name) from all_tables where table_name like 'test_table%';
如何根据查询结果收到所有这些表的选择?我尝试连接它们并使用“立即执行”,但我无法使它工作。
我试过了:
.sidebar-nav{
position: fixed; //Center works but then my navbar is not fixed anymore!
width: 100%;
z-index: 1;
}
#filler {
display: block;
height: 50px;
}
答案 0 :(得分:3)
这是执行"选择计数(*)"的一个小例子。在查询返回的表列表中:
select
TRUNC(SYSDATE) AS COUNT_DATE,
table_name,
to_number(
extractvalue(
xmltype(
dbms_xmlgen.getxml('select count(*) c from '||owner||'.'||table_name))
,'/ROWSET/ROW/C')) as count
from
all_tables where rownum < 3
order by
table_name
dbms_xmlgen.getxml允许您执行动态创建的查询并将结果作为XML返回,您可以使用extractvalue从中提取值。当您要发出的查询返回单行时有用。
此致
→
答案 1 :(得分:0)
您可以执行以下操作:
select 'select * from '||owner||'.'||table_name||';'
from all_tables
where lower(table_name) like '%test_table%';
然后复制并粘贴结果并以脚本或根据您的需要单独运行语句。