Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

GATHER_PLAN_STATISTICS không tạo thống kê kế hoạch cơ bản

Nếu tất cả những gì bạn chạy là hai câu trong câu hỏi của bạn:

select /*+ gather_plan_statistics */ * from emp;

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

Sau đó, tôi nghĩ rằng vấn đề của bạn là việc bạn sử dụng DBMS_XPLAN.DISPLAY . Theo cách bạn đang sử dụng, bạn đang in kế hoạch của câu lệnh cuối cùng mà bạn giải thích, không phải câu lệnh cuối cùng bạn đã thực hiện. Và "giải thích" sẽ không thực thi truy vấn, vì vậy nó sẽ không được hưởng lợi từ gather_plan_statistics gợi ý.

Điều này phù hợp với tôi trong 12c:

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

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

tức là display_cursor thay vì chỉ display .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. oci_bind_by_name và to_date PHP / OCI / Oracle

  2. 9 truy vấn máy in ứng dụng Oracle hữu ích hàng đầu

  3. Ví dụ về loại bảng trong Oracle PL SQL

  4. Oracle Database Explorer:Đào tạo và Công nhận Miễn phí

  5. Hàm JSON_OBJECTAGG () trong Oracle