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

Cách lập chỉ mục cột Y / N trong Oracle

Tỷ lệ Y / N là gì? Các bản ghi có được cập nhật để chúng đi từ Y / N và / hoặc N / Y không? Nếu có, điều này có xảy ra thường xuyên không (ví dụ:trong kho / hết hàng / còn hàng / hết- hết hàng) hay là hàng còn lại (chưa xử lý / đã xử lý)?

Nếu các mục nhập bị trộn lẫn với nhau và bạn có một tỷ lệ chẵn thì một chỉ mục không có khả năng hữu ích.

Bạn có thể sử dụng phân vùng (nếu bạn có giấy phép) để tách Y khỏi N. Các khung nhìn cụ thể hóa hoặc làm cho bảng thành một chế độ xem UNION ALL trên hai bảng (có thể với INSTEAD OF trigger) cũng có thể tách Y khỏi N. Tất cả những điều này sẽ bị phạt nếu cập nhật quá trình xử lý.

Chỉ mục bitmap có thể phù hợp nếu cột không có nhiều hoạt động cập nhật.

Bạn có thể có một chỉ mục dựa trên hàm dựa trên CASE WHEN flag ='Y' rồi kết thúc 'Y'. Điều đó sẽ loại trừ N giá trị khỏi chỉ mục làm cho nó nhỏ hơn rất nhiều.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. so sánh hai con trỏ trong oracle thay vì sử dụng MINUS

  2. Sử dụng khác biệt trong XMLAGG trên các bản ghi sao chép

  3. Oracle SQL Group Bởi nếu

  4. Truy xuất dữ liệu cục lớn bằng sqlplus

  5. Làm thế nào để tìm nạp Nhận xét từ Oracle 11g bằng JDBC?