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

Oracle:Chỉ mục đa cột đơn hoặc hai chỉ mục cột đơn

Nó phụ thuộc ...

Rất khó xảy ra trường hợp chỉ mục chỉ trên column1 sẽ có lợi nếu bạn đã có chỉ mục tổng hợp trên column1, column2 . Kể từ column1 là chỉ mục hàng đầu, các truy vấn đối với bảng chỉ có column1 như một vị từ sẽ có thể sử dụng chỉ mục tổng hợp. Nếu bạn thường xuyên chạy các truy vấn cần quét toàn bộ chỉ mục và sự hiện diện của column2 về cơ bản làm tăng kích thước của chỉ mục, có thể chỉ mục trên column1 sẽ hiệu quả hơn vì quá trình quét chỉ mục đầy đủ sẽ cần thực hiện ít I / O hơn. Nhưng đó là một tình huống khá bất thường.

Chỉ mục trên column2 có thể có lợi nếu một số truy vấn của bạn đối với bảng chỉ định các vị từ chỉ trên column2 . Nếu có tương đối ít giá trị khác biệt của column1 , có thể Oracle có thể thực hiện quét bỏ qua chỉ mục bằng cách sử dụng chỉ mục tổng hợp để đáp ứng các truy vấn chỉ xác định column2 làm vị ngữ. Nhưng quét bỏ qua có thể kém hiệu quả hơn nhiều so với quét phạm vi, vì vậy có khả năng hợp lý là một chỉ mục chỉ trên column2 sẽ có lợi cho những truy vấn đó. Nếu có một số lượng lớn các giá trị riêng biệt cho column1 , quá trình quét bỏ qua sẽ thậm chí còn kém hiệu quả hơn và chỉ mục trên column2 sẽ có lợi hơn. Tất nhiên, nếu bạn không bao giờ truy vấn bảng bằng column2 mà không chỉ định một vị từ trên column1 , bạn sẽ không cần chỉ mục chỉ trên column2 .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-12638:Không truy xuất được thông tin xác thực

  2. Truy vấn SQL DIFFDATE trả về số nhận dạng không hợp lệ

  3. chuyển đổi oracle blob sang loại xml

  4. Oracle:bảng luôn tồn tại sau khi thả bảng

  5. Tham số Oracle với câu lệnh IN?