Search notes:

Oracle: Init parameter _GBY_HASH_AGGREGATION_ENABLED

create table tq84_objs as
select
   owner       own,
   object_name nam,
   object_type typ
from
   dba_objects;

explain plan for
select distinct
   nam,
   typ
from
   tq84_objs;
--
-- ----------------------------------------
-- | Id  | Operation          | Name      |
-- ----------------------------------------
-- |   0 | SELECT STATEMENT   |           |
-- |   1 |  HASH UNIQUE       |           |
-- |   2 |   TABLE ACCESS FULL| TQ84_OBJS |
-- ----------------------------------------

select * from table(dbms_xplan.display(format=>'basic'));

alter session set "_gby_hash_aggregation_enabled" = false;


explain plan for
select distinct
   nam,
   typ
from
   tq84_objs;
--
-- ----------------------------------------
-- | Id  | Operation          | Name      |
-- ----------------------------------------
-- |   0 | SELECT STATEMENT   |           |
-- |   1 |  SORT UNIQUE       |           |
-- |   2 |   TABLE ACCESS FULL| TQ84_OBJS |
-- ----------------------------------------

select * from table(dbms_xplan.display(format=>'basic'));

alter session set "_gby_hash_aggregation_enabled" = true;

drop table tq84_objs;

See also

init parameters

Index