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
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 tỷ lệ kèo bóng đá trang chohiện tạiPhiên bản hoặc tỷ lệ kèo bóng đá trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

11.1. tỷ lệ kèo bóng đá#

Giả sử chúng ta có tỷ lệ kèo bóng đá bảng tương tự như thế này:

Tạo bảng Test1 (

và ứng dụng phát hành nhiều truy vấn của biểu mẫu:

Chọn nội dung từ Test1 trong đó id =hằng số;

Không có chuẩn bị trước, hệ thống sẽ phải quét toàn bộTest1Bảng, từng hàng, để tìm tất cả các tỷ lệ kèo bóng đá khớp. Nếu có nhiều hàng trongTest1Và chỉ một vài hàng (có thể là 0 hoặc một) sẽ được trả về bởi một truy vấn như vậy, đây rõ ràng là một phương pháp không hiệu quả. Nhưng nếu hệ thống đã được hướng dẫn duy trì một chỉ tỷ lệ kèo bóng đá trênidCột, nó có thể sử dụng tỷ lệ kèo bóng đá phương thức hiệu quả hơn để định vị các hàng phù hợp. Chẳng hạn, nó chỉ có thể phải đi sâu vào tỷ lệ kèo bóng đá vài cấp độ vào cây tìm kiếm.

tỷ lệ kèo bóng đá cách tiếp cận tương tự được sử dụng trong hầu hết các cuốn sách phi hư cấu: các thuật ngữ và khái niệm thường xuyên được các độc giả tra cứu được thu thập trong tỷ lệ kèo bóng đá chỉ số chữ cái ở cuối cuốn sách. Người đọc quan tâm có thể quét chỉ số tương đối nhanh chóng và lật vào (các) trang thích hợp, thay vì phải đọc toàn bộ cuốn sách để tìm tài liệu quan tâm.

Lệnh sau có thể được sử dụng để tạo một chỉ tỷ lệ kèo bóng đá trênidCột, như đã thảo luận:

Tạo chỉ tỷ lệ kèo bóng đá Test1_id_index trên Test1 (id);

Têntest1_id_indexCó thể được chọn tự do, nhưng bạn nên chọn tỷ lệ kèo bóng đá cái gì đó cho phép bạn nhớ sau đây chỉ số.

Để xóa một chỉ tỷ lệ kèo bóng đá, sử dụngDrop Indexlệnh. Các chỉ tỷ lệ kèo bóng đá có thể được thêm vào và xóa khỏi các bảng bất cứ lúc nào.

Sau khi tạo chỉ tỷ lệ kèo bóng đá, không cần can thiệp thêm: Hệ thống sẽ cập nhật chỉ tỷ lệ kèo bóng đá khi bảng được sửa đổi và nó sẽ sử dụng chỉ tỷ lệ kèo bóng đá trong các truy vấn khi nghĩ rằng làm như vậy sẽ hiệu quả hơn so với quét bảng tuần tự. Nhưng bạn có thể phải chạyPhân tíchlệnh thường xuyên cập nhật số liệu thống kê để cho phép người lập kế hoạch truy vấn đưa ra quyết định có giáo dục. Nhìn thấyChương 14Để biết thông tin về cách tìm hiểu xem một chỉ tỷ lệ kèo bóng đá có được sử dụng hay không và tại sao người lập kế hoạch có thể chọnkhôngĐể sử dụng chỉ tỷ lệ kèo bóng đá.

Chỉ tỷ lệ kèo bóng đá cũng có thể có lợiCập nhậtXóaCác lệnh có điều kiện tìm kiếm. Các chỉ tỷ lệ kèo bóng đá có thể được sử dụng trong các tìm kiếm tham gia.

Nói chung,PostgreSQLChỉ tỷ lệ kèo bóng đá có thể được sử dụng để tối ưu hóa các truy vấn có chứa một hoặc nhiềuWHEREhoặctham giamệnh đề của biểu mẫu

COLLUMN đã lập chỉ tỷ lệ kèo bóng đá Indexable-coperator so sánh-giá trị

ở đây,COLLUMN đã lập chỉ tỷ lệ kèo bóng đálà bất kỳ cột hoặc biểu thức nào mà chỉ tỷ lệ kèo bóng đá đã được xác định. TheIndexable-coperatorlà người vận hành là thành viên của chỉ tỷ lệ kèo bóng đálớp vận hànhĐối với cột được lập chỉ tỷ lệ kèo bóng đá. (Thông tin chi tiết về điều đó xuất hiện bên dưới.) Vàso sánh-giá trịCó thể là bất kỳ biểu thức nào không dễ bay hơi và không tham chiếu bảng của chỉ tỷ lệ kèo bóng đá.

Trong một số trường hợp, trình lập kế hoạch truy vấn có thể trích xuất một mệnh đề có thể lập chỉ tỷ lệ kèo bóng đá của biểu mẫu này từ cấu trúc SQL khác. Một ví dụ đơn giản là nếu mệnh đề ban đầu là

so sánh-giá trị Nhà điều hành COLLUMN

Sau đó, nó có thể được lật thành dạng có thể lập chỉ tỷ lệ kèo bóng đá nếu bản gốcNhà điều hànhCó toán tử trước là thành viên của lớp toán tử của chỉ tỷ lệ kèo bóng đá.

Tạo một chỉ tỷ lệ kèo bóng đá trên một bảng lớn có thể mất nhiều thời gian. Theo mặc định,PostgreSQLCho phép đọc (ChọnCâu lệnh) xảy ra trên bảng song song với việc tạo chỉ tỷ lệ kèo bóng đá, nhưng ghi (Chèn, Cập nhật, Xóa) bị chặn cho đến khi bản dựng chỉ tỷ lệ kèo bóng đá kết thúc. Trong môi trường sản xuất, điều này thường không thể chấp nhận được.Chỉ tỷ lệ kèo bóng đá xây dựng đồng thời.

Sau khi một chỉ tỷ lệ kèo bóng đá được tạo, hệ thống phải giữ cho nó được đồng bộ hóa với bảng. Điều này thêm chi phí cho các hoạt động thao tác dữ liệu.Tuples chỉ dành cho heap. Do đó, các chỉ tỷ lệ kèo bóng đá hiếm khi hoặc không bao giờ được sử dụng trong các truy vấn nên được xóa.