No conozco ninguna utilidad o función de Oracle para hacer esto. Puede encontrar la información que necesita para escribir su propio programa para hacer esto en las vistas DBA_TAB_PARTITIONS o ALL_TAB_PARTITIONS, similares a las siguientes:
SELECT TABLE_OWNER, TABLE_NAME, PARTITION_NAME, HIGH_VALUE
FROM SYS.DBA_TAB_PARTITIONS
WHERE TABLE_OWNER = strSchema AND
TABLE_NAME = strTable
donde strSchema y strTable son el esquema y la tabla que le interesan. HIGH_VALUE es un campo LARGO que contiene el código para una llamada a la función TO_DATE (asumiendo que su tabla está dividida en un campo de fecha); deberá asignar HIGH_VALUE a un campo LARGO, luego asignar LARGO a un VARCHAR2 para obtener el valor en algún lugar donde pueda manipularse, de una manera similar a:
lHigh_value LONG;
strDate_clause VARCHAR2(100);
lHigh_value := aRow.HIGH_VALUE;
strDate_clause := lHigh_value;
Luego, solo necesita extraer los campos apropiados de la cláusula DATE para determinar qué particiones necesita descartar.
Comparte y disfruta.