In oracle database 12c release, you can use the package DBMS_QOPATCH to find information about patches currently applied in your database.
this package can only be executed by “sys” user account.
examples of the package sub-functions used:
DBMS_QOPATCH.GET_OPATCH_DATA (
patchnum IN VARCHAR2);
RETURN XMLYPE;
*.* returns information about Patch ID, patch creation time.
DBMS_QOPATCH.GET_OPATCH_INSTALL_INFO
RETURNS XMLTYPE;
*.* information about th patch and oracle inventory location.
DBMS_QOPATCH.GET_OPATCH_LSINVENTORY
RETURN XMLYPE;
*.* returns full patch inventory in XML format
Also, you can use the query:
SQL> select dbms_qopatch.get_opatch_lsinventory() from dual;
Reference: http://docs.oracle.com/cd/E16655_01/appdev.121/e17602/d_qopatch.htm#ARPLS74923