Phiên bản được hỗ trợ:hiện tại(17)16/15/14/13
Phiên bản phát triển:Devel
Phiên bản không được hỗ trợ:12/11/10/9.6/9.5/9.4/9.3/9.2/9.1/9.0/8.4/8.3/8.2/8.1
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 chohiện tạiPhiê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 chỉ tỷ lệ kèo bóng đá

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

May mắn thay,PostgreSQLCó khả năng kết hợp nhiều chỉ tỷ lệ kèo bóng đá (bao gồm nhiều cách sử dụng của cùng một chỉ tỷ lệ kèo bóng đá) để xử lý các trường hợp không thể được thực hiện bằng cách quét chỉ tỷ lệ kèo bóng đá. Hệ thống có thể hình thànhhoặcĐiều kiện trên một số lần quét chỉ tỷ lệ kèo bóng đá. 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 chia thành bốn lần quét riêng biệt của một chỉ tỷ lệ kèo bóng đá trênx, mỗi lần quét sử dụng một trong các mệnh đề truy vấn. tỷ lệ kèo bóng đá quả của các lần quét này sau đó được tạo ra với nhau để tạo ra tỷ lệ kèo bóng đá quả.xY, 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ỉ tỷ lệ kèo bóng đá với mệnh đề truy vấn thích hợp và sau đó và cùng nhau kết quả chỉ tỷ lệ kèo bóng đá để xác định các hàng kết quả.

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

Trong tất cả các ứng dụng đơn giản nhất, có nhiều kết hợp các chỉ tỷ lệ kèo bóng đá có thể hữu ích và nhà phát triển cơ sở dữ liệu phải thực hiện đánh đổi để quyết định các chỉ tỷ lệ kèo bóng đá nào sẽ cung cấp. Đôi khi các chỉ tỷ lệ kèo bóng đá Multicolumn là tốt nhất, nhưng đôi khi tốt hơn là tạo các chỉ tỷ lệ kèo bóng đá riêng biệt và dựa vào tính năng kết hợp chỉ số.​​x, đôi khi chỉ có cộtyvà đôi khi cả hai cột, bạn có thể chọn tạo hai chỉ tỷ lệ kèo bóng đá riêng biệt trênxY, Dựa vào kết hợp chỉ tỷ lệ kèo bóng đá để 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ỉ tỷ lệ kèo bóng đá Multicolumn trên(x, y). Chỉ số này thường sẽ hiệu quả hơn so với kết hợp chỉ tỷ lệ kèo bóng đá cho các truy vấn liên quan đến cả hai cột, nhưng như đã thảo luận trongPhần 11.3, Nó sẽ gần như vô dụng đối với các truy vấn chỉ liên quan đếnY, vì vậy nó không phải là chỉ tỷ lệ kèo bóng đá duy nhất. Một sự kết hợp của chỉ tỷ lệ kèo bóng đá Multicolumn và một chỉ tỷ lệ kèo bóng đá riêng biệt trênysẽ phục vụ tỷ lệ kèo bóng đá lý tốt. Đối với các truy vấn chỉ liên quan đếnx, Chỉ số Multicolumn có thể được sử dụng, mặc dù nó sẽ lớn hơn và do đó chậm hơn một chỉ tỷ lệ kèo bóng đá trênxMột mình. Thay thế cuối cùng là tạo ra cả ba chỉ tỷ lệ kèo bóng đá, 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 loại truy vấn đều phổ biến.