Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / 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 / 8.0 / 7.4 / 7.3 / 7.2
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 kèo bóng đá c1 phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

11.3. Chỉ số kèo bóng đá c1

Một chỉ kèo bóng đá c1 có thể được xác định trên nhiều cột của bảng. Ví dụ: nếu bạn có một bảng biểu mẫu này:

Tạo bảng Test2 (
  int chính,
  int nhỏ,
  Tên Varchar
);

(giả sử, bạn giữ của bạn/devThư kèo bóng đá c1 trong cơ sở dữ liệu ...) và bạn thường xuyên phát hành truy vấn như:

Chọn tên từ Test2 trong đó chính =hằng sốvà minor =hằng số;

Sau đó, có thể phù hợp để xác định một chỉ kèo bóng đá c1 trên các cộtMajorMinorcùng nhau, ví dụ:

Tạo Chỉ kèo bóng đá c1 Test2_MM_IDX trên Test2 (Major, Minor);

Hiện tại, chỉ có các loại B-Tree, Gist và Gin hỗ trợ các chỉ mục kèo bóng đá c1. Tối đa 32 cột có thể được chỉ định. (Giới hạn này có thể được thay đổi khi xây dựng11604_11616; xem tệppg_config_manual.h.)

Chỉ số B-Tree kèo bóng đá c1 có thể được sử dụng với các điều kiện truy vấn liên quan đến bất kỳ tập hợp con nào của các cột của chỉ mục, nhưng chỉ mục là hiệu quả nhất khi có các ràng buộc trên các cột dẫn đầu (ngoài cùng bên trái). Quy tắc chính xác là các ràng buộc bình đẳng trên các cột hàng đầu, cộng với mọi ràng buộc bất bình đẳng trên cột đầu tiên không có ràng buộc bình đẳng, sẽ được sử dụng để giới hạn phần của chỉ số được quét. Các ràng buộc trên các cột ở bên phải của các cột này được kiểm tra trong chỉ mục, vì vậy chúng lưu các lượt truy cập vào bảng thích hợp, nhưng chúng không làm giảm phần của chỉ mục phải được quét. Ví dụ: đã cho một chỉ mục trên(a, b, c)và điều kiện truy vấnTrong đó a = 5 và b = 42 và c <7712461_12526A= 5 vàB= 42 lên qua kèo bóng đá c1 cuối cùng vớiA= 5. kèo bóng đá c1 nhập chỉ kèo bóng đá c1 vớiC= 77 sẽ bị bỏ qua, nhưng chúng vẫn phải được quét qua. Chỉ số này về nguyên tắc này có thể được sử dụng cho kèo bóng đá c1 truy vấn có kèo bóng đá c1 ràng buộc trênBvà/hoặcCKhông có ràng buộc trênA- Nhưng toàn bộ chỉ kèo bóng đá c1 sẽ phải được quét, vì vậy trong hầu hết các trường hợp, người lập kế hoạch sẽ thích quét bảng tuần tự bằng cách sử dụng chỉ kèo bóng đá c1.

Một chỉ kèo bóng đá c1 GIST đa trường có thể được sử dụng với các điều kiện truy vấn liên quan đến bất kỳ tập hợp con nào của các cột của chỉ kèo bóng đá c1. Các điều kiện trên các cột bổ sung hạn chế các kèo bóng đá c1 được trả về bởi chỉ kèo bóng đá c1, nhưng điều kiện trên cột đầu tiên là cái quan trọng nhất để xác định số lượng chỉ số cần được quét. Một chỉ kèo bóng đá c1 GIST sẽ tương đối không hiệu quả nếu cột đầu tiên của nó chỉ có một vài giá trị riêng biệt, ngay cả khi có nhiều giá trị riêng biệt trong các cột bổ sung.

13573_13804

Tất nhiên, mỗi cột phải được sử dụng với các toán tử phù hợp với loại chỉ kèo bóng đá c1; Các điều khoản liên quan đến các nhà khai thác khác sẽ không được xem xét.

Chỉ số kèo bóng đá c1 nên được sử dụng một cách tiết kiệm. Trong hầu hết các tình huống, một chỉ mục trên một cột là đủ và tiết kiệm không gian và thời gian. Các chỉ mục có nhiều hơn ba cột khó có thể hữu ích trừ khi việc sử dụng bảng cực kỳ cách điệu. Xem thêmPhần 11.5Để thảo luận về giá trị của các cấu hình chỉ kèo bóng đá c1 khác nhau.