sql >> Database teknologi >  >> RDS >> Oracle

GATHER_PLAN_STATISTICS genererer ikke grundlæggende planstatistik

Hvis det eneste, du løb, var de to udsagn i dit spørgsmål:

select /*+ gather_plan_statistics */ * from emp;

select * from table(dbms_xplan.display(FORMAT=>'ALLSTATS LAST'));

Så tror jeg, at dit problem er din brug af DBMS_XPLAN.DISPLAY . Som du bruger det, udskriver du planen for den sidste erklæring, du forklarede, ikke den sidste sætning, du udførte. Og "explain" vil ikke udføre forespørgslen, så det vil ikke drage fordel af en gather_plan_statistics tip.

Dette virker for mig i 12c:

select /*+ gather_plan_statistics */ count(*) from dba_objects;

SELECT *
FROM   TABLE (DBMS_XPLAN.display_cursor (null, null, 'ALLSTATS LAST'));

dvs. display_cursor i stedet for blot display .



  1. Har PL/SQL-udgange i realtid

  2. Hvordan DEGREES() virker i MariaDB

  3. Vælg gruppe af rækker, der matcher alle elementer på en liste

  4. Få en liste over databasepostkonti i SQL Server (T-SQL)