我想运行一个使用列值(在其中存储表名)的查询来确定子选择的from子句中的表名。
类似的东西:
SELECT column_with_tablename,
(SELECT COUNT(*)FROM VALUEOF(column_with_tablename))as as numberofitems
FROM table1
我知道这很脆弱,但我需要它的工作。 (我继承了一个在一个列中存储表名的数据库)
有办法吗?
答案 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