如果你不想写任何PL/SQL尝试使用(一般情况下):
select
sys.dbms_metadata_util.long2varchar(4000, 'TABLE_NAME', 'COLUMN_NAME', tp.rowid) as COLUMN_NAME
from
TABLE_NAME tp
where
<your_condition on table TABLE_NAME>
在... your_condition上表TABLE_NAME不使用COLUMN_NAME ...
在你的情况,因为你查询VIEW这是一个比较复杂一点。 这是必要的视图代码挖掘和重写查询为:
select PARTITION_NAME, HIGH_VALUE from (
select t.PARTITION_NAME, sys.dbms_metadata_util.long2varchar(4000, 'SYS.TABCOMPART$', 'HIBOUNDVAL', tp.rowid) as high_value
from
all_tab_partitions t, sys.obj$ o, sys.tabcompart$ tp
where
t.table_name = 'TABLE_NAME'
and t.table_owner = 'SCHEMA_NAM'
and o.name = t.table_name
and o.subname = t.partition_name
and o.obj# = tp.obj#(+)
)
where
high_value > to_number(TO_CHAR(TRUNC(ADD_MONTHS(SYSDATE, 1), 'MONTH'), 'YYYYDDD'))
上的Oracle 11g
什么是错误测试? – 2012-04-24 19:03:04
ORA-00997:非法使用LONG数据类型 – mahen 2012-04-24 19:08:48