Search notes:

Oracle PLAN_TABLE: column OBJECT_ALIAS

The value of object_alias is either null or matches the regular expression "[^"]+"@"[^"]+"$, the following SQL statement does not return a record (at least I never encountered one):
select count(*) from v$sql_plan where not regexp_like(object_alias, '"[^"]+"@"[^"]+"$');
The second part (after the @, which is enclosed in "…") seems to correspond to a qblock name.
select
   object_alias,
--
-- If not using an alias in the SQL statement, the first part of the object alias
-- is equal to the object_name. Note, that object_name can also refer to an index
-- in which case othe first part of the object alias is null:
   regexp_replace(object_alias, '^"([^"]+)"@"[^"]+"$', '\1') object_alias_part_1,
   object_name,
 
--
-- Often, the second part of the object alias is equal to the qblock_name (
-- especially if qblock_name is not using the hash-semantics (SEL$12EC7C91):
   regexp_replace(object_alias, '^"[^"]+"@"([^"]+)"$', '\1') object_alias_part_2,
   qblock_name,
-- -----
   object_type,
   operation
-- v$sql_plan.*
from
   v$sql_plan;

See also

The plan_table and its column qblock_name.

Index