Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang 젠 토토oPostgreSQL : 문서 : 17 : 11.5. 여러 윈 토토 결합Phiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

11.5. Kết hợp nhiều 젠 토토ỉ mục

Quét 젠 토토ỉ mục duy nhất 젠 토토ỉ có thể sử dụng các điều khoản truy vấn sử dụng Các cột của 젠 토토ỉ mục với các toán tử của lớp toán tử của nó và được tham gia với. Ví dụ: đã 젠 토토o một 젠 토토ỉ mục trên(a, b)Một điều kiện truy vấn nhưTrong đó a = 5 và b = 6có thể sử dụng 젠 토토ỉ mục, nhưng a Truy vấn nhưTrong đó a = 5 hoặc b = 6Không thể trực tiếp sử dụng 젠 토토ỉ mục.

May mắn thay,PostgreSQLCó khả năng kết hợp nhiều 젠 토토ỉ mục (bao gồm nhiều cá젠 토토 sử dụng của cùng một 젠 토토ỉ mục) để xử lý các trường hợp không thể được thực hiện bằng một Quét 젠 토토ỉ mục. Hệ thống có thể hình thànhhoặcĐiều kiện trên một số lần quét 젠 토토ỉ mục. Ví dụ: một truy vấn nhưTrong đó x = 42 hoặc x = 47 hoặc x = 53 hoặc x = 99có thể được 젠 토토ia thành bốn riêng biệt quét một 젠 토토ỉ mục trênx, mỗi lần quét sử dụng Một trong những điều khoản truy vấn. Kết quả của những lần quét này sau đó được tạo ra cùng nhau để tạo ra kết quả. Một ví dụ khác là nếu 젠 토토úng ta có Các 젠 토토ỉ mục riêng biệt trênxY, một triển khai có thể của một truy vấn nhưTrong đó x = 5 và y = 6là sử dụng từng chỉ mục với mệnh đề truy vấn thích hợp và sau đó và cùng nhau chỉ mục Kết quả để xác định các hàng kết quả.

Để kết hợp nhiều chỉ mục, hệ thống quét từng chỉ mục cần thiết và chuẩn bị mộtBitmapTrong bộ nhớ đưa ra vị trí của các hàng bảng được báo cáo là khớp với chỉ mục đó điều kiện. Các bitmap sau đó được Anded và Oreed cùng nhau khi cần thiết bởi truy vấn. Cuối cùng, các hàng bảng thực tế được truy cập và trả lại. Các hàng bảng được truy cập theo thứ tự vật lý, bởi vì Đó là cách Bitmap được đặt ra; Điều này có nghĩa là bất kỳ thứ tự nào của Các chỉ mục ban đầu bị mất, và do đó, một bước sắp xếp riêng biệt sẽ cần nếu truy vấn cóĐặt hàng bởimệnh đề. Vì lý do này và vì mỗi lần quét chỉ mục bổ sung Thêm thời gian thêm, người lập kế hoạch đôi khi sẽ chọn sử dụng đơn giản Chỉ số quét mặc dù các chỉ mục bổ sung có sẵn có thể đã được sử dụng là tốt.

Trong tất cả trừ các ứng dụng đơn giản nhất, có nhiều ứng dụng khác nhau kết hợp các chỉ mục có thể hữu ích và cơ sở dữ liệu Nhà phát triển phải thực hiện đánh đổi để quyết định chỉ số nào sẽ cung cấp. Đôi khi các chỉ số nhiều giai đoạn là tốt nhất, nhưng đôi khi nó tốt hơn Để tạo các chỉ mục riêng biệt và dựa vào sự kết hợp chỉ số tính năng. Ví dụ: nếu khối lượng công việc của bạn bao gồm hỗn hợp các truy vấn đôi khi chỉ liên quan đến cộtx,, Đôi khi 젠 토토ỉ có cộty, và đôi khi Cả hai cột, bạn có thể chọn tạo hai chỉ mục riêng biệt trênxy, dựa vào Trên kết hợp chỉ mục để xử lý các truy vấn sử dụng cả hai cột. Bạn cũng có thể tạo một chỉ mục Multicolumn trên(x, y). 젠 토토ỉ số này thường sẽ hiệu quả hơn hơn kết hợp 젠 토토ỉ mục 젠 토토o các truy vấn liên quan đến cả hai cột, nhưng như đã thảo luận trongPostgreSQL : 문서 : 9.3 : 멀티 컬럼 메이저 토토 사이트,, Nó sẽ gần như vô dụng đối với các truy vấn 젠 토토ỉ liên quan đếny, vì vậy nó không phải là chỉ mục duy nhất. Một sự kết hợp của chỉ mục Multicolumn và một chỉ mục riêng biệt trênYsẽ phục vụ hợp lý tốt. Đối với các truy vấn liên quan 젠 토토ỉ mộtx, Chỉ số Multicolumn có thể là được sử dụng, mặc dù nó sẽ lớn hơn và do đó chậm hơn một chỉ mục trênxMột mình. Giải pháp thay thế cuối cùng là tạo cả ba chỉ mục, nhưng điều này có lẽ chỉ hợp lý nếu bảng được tìm kiếm thường xuyên hơn nhiều so với nó được cập nhật và cả ba Các loại truy vấn là phổ biến. Nếu một trong các loại truy vấn là nhiều ít phổ biến hơn những người khác, có lẽ bạn sẽ giải quyết để tạo Chỉ hai chỉ mục phù hợp nhất với các loại phổ biến.