As always with Oracle its pretty ‘easy‘ and ‘straightforward‘ – you have to convert the high_value to XML and then extract it using XPATH (omg!). Let me guess, it would cost a fortune to provide native function/view that could do that…
SELECT partition_name, extractValue(dbms_xmlgen.getxmltype('SELECT high_value FROM user_tab_partitions up2 WHERE up2.partition_position = ' || up1.partition_position), '//ROW/HIGH_VALUE') AS high_value FROM user_tab_partitions up1 ORDER BY high_value;
Enjoy (that simplicity) !
This is the simplest solution I’ve found for extracting TIMESTAMP/DATE from high_value, without using stored procedure.