是否可以使用列值来确定子选择的from子句中的表名?

时间:2015-06-25 11:54:09

标签: sql oracle

我想运行一个使用列值(在其中存储表名)的查询来确定子选择的from子句中的表名。

类似的东西:

  

SELECT column_with_tablename,

     

(SELECT COUNT(*)FROM VALUEOF(column_with_tablename))as as   numberofitems

     

FROM table1

我知道这很脆弱,但我需要它的工作。 (我继承了一个在一个列中存储表名的数据库)

有办法吗?

1 个答案:

答案 0 :(得分:2)

对于纯sql解决方案,请参阅this answer

select column_with_tablename,
       to_number(extractvalue(xmltype
         (dbms_xmlgen.getxml('select count(*) c from '||column_with_tablename)
         ),'/ROWSET/ROW/C')) as count
from table1