Is there a way to find the partition or subpartition name where my ID belongs I know if I need to select from any partition I need to provide partition name

SELECT * FROM TABLE PARTITION(P1);


What if I need to know which partition a particular value belongs using a sql query then?

SELECT PARTITION_NAME FROM TABLE WHERE DOC_ID = 'S00102981655537O';


Error

ORA-00904: "PARTITION_NAME": invalid identifier
00904. 00000 -  "%s: invalid identifier"
*Cause:    
*Action:
Error at Line: 25 Column: 8


Oracle version: 11g
First get rowid of the row and object id of the object using DBMS_ROWID.

SQL&gt; insert into t3 values('S00102981655537O',sysdate,'IN-RJ');

1 row created.

SQL&gt; select dbms_rowid.rowid_object(rowid) from t3 where doc_id='S00102981655537O';

DBMS_ROWID.ROWID_OBJECT(ROWID)
------------------------------
             93178

SQL&gt; select subobject_name from user_objects where data_object_id=93178;

SUBOBJECT_
----------
SYS_SUBP81




SQL&gt; select * from t3 subpartition(SYS_SUBP81);

DOC_ID           DOC_DATET STATE
-------------------- --------- ----------
S00102981655537O     31-MAR-16 IN-RJ


As we can see that row belongs to SYS_SUBP81 subpartition.