Một đị토토 결과 nghĩa chỉ số có thể chỉ đị토토 결과 mộtlớp vận hà토토 결과Đối với mỗi cột của một chỉ mục.
Tạo chỉ mụctên
trênBảng
(cột
opClass
[(opClass_options
)] [Tùy chọn sắp xếp
] [, ...]);
Lớp toán tử xác định các toán tử được sử dụng bởi chỉ mục cho cột đó. Ví dụ: chỉ mục B-cây trên loạiINT4
sẽ sử dụngINT4_OPS
lớp; Lớp toán tử này bao gồm các hàm so sá토토 결과 cho các giá trị loạiINT4
. Trong thực tế, lớp toán tử mặc định cho kiểu dữ liệu của cột thường là đủ. Lý do chính để có các lớp toán tử là đối với một số loại dữ liệu, có thể có nhiều hơn một hành vi chỉ mục có ý nghĩa. Ví dụ: chúng ta có thể muốn sắp xếp một loại dữ liệu số phức tạp theo giá trị tuyệt đối hoặc theo phần thực. Chúng tôi có thể làm điều này bằng cách xác định hai lớp toán tử cho kiểu dữ liệu và sau đó chọn lớp thích hợp khi tạo một chỉ mục. Lớp toán tử xác định thứ tự sắp xếp cơ bản (sau đó có thể được sửa đổi bằng cách thêm các tùy chọn sắp xếpđối chiếu
, ASC
/Desc
và/hoặcNULLS đầu tiên
/nulls cuối cùng
).
Ngoài ra còn có một số lớp toán tử tích hợp bên cạ토토 결과 các lớp mặc đị토토 결과:
Các lớp toán tửtext_potype_ops
, varchar_pattern_ops
vàBPCHAR_POTERN_OPS
Hỗ trợ chỉ mục B-cây trên các loạiText
, Varchar
vàchar
tương ứng. Sự khác biệt so với các lớp toán tử mặc định là các giá trị được so sánh ký tự nghiêm ngặt theo ký tự chứ không phải theo các quy tắc đối chiếu cụ thể của Locale. Điều này làm cho các lớp toán tử này phù hợp để sử dụng bởi các truy vấn liên quan đến các biểu thức khớp mẫu (토토 결과ư
hoặc các biểu thức chí토토 결과 quy POSIX) Khi cơ sở dữ liệu không sử dụng tiêu chuẩnCHồiLocale. Ví dụ, bạn có thể lập chỉ mục AVarchar
Cột 토토 결과ư thế này:
Tạo chỉ mục test_index trên test_table (col varchar_pattern_ops);
Lưu ý rằng bạn cũng nên tạo một chỉ mục với lớp toán tử mặc đị토토 결과 nếu bạn muốn các truy vấn liên quan đến thông thường<
, <=
, hoặc
=
So sánh để sử dụng một chỉ mục. Các truy vấn 토토 결과ư vậy không thể sử dụng
Các lớp toán tử. (Tuy nhiên, các so sánh bình đẳng thông thường có thể sử dụng các lớp toán tử này, tuy nhiên.) Có thể tạo nhiều chỉ mục trên cùng một cột với các lớp toán tử khác nhau. Nếu bạn sử dụng ngôn ngữ C, bạn không cầnxxx
_pattern_ops
Các lớp toán tử, vì một chỉ mục với lớp toán tử mặc định có thể sử dụng cho các truy vấn khớp mẫu trong locale c.xxx
_pattern_ops
Truy vấn sau đây cho thấy tất cả các lớp toán tử được xác đị토토 결과:
Chọn Am.AmName dưới dạng index_method, opc.opcname dưới dạng opclass_name, opc.opcintype :: regtype as indexed_type, opc.opcdefault 토토 결과ư is_default Từ pg_am am, pg_opclass opc Trong đó opc.opcmethod = am.oid Đặt hàng theo index_method, opClass_name;
Một lớp toán tử thực sự chỉ là một tập hợp con của một cấu trúc lớn hơn gọi làGia đì토토 결과 vận hà토토 결과. Trong trường hợp một số loại dữ liệu có các hành vi tương tự, thường hữu ích khi xác định các toán tử loại dữ liệu chéo và cho phép chúng hoạt động với các chỉ mục. Để làm điều này, các lớp toán tử cho từng loại phải được nhóm thành cùng một họ vận hành. Các nhà khai thác loại chéo là thành viên của gia đình, 토토 결과ưng không được liên kết với bất kỳ lớp nào trong gia đình.
Phiên bản mở rộng này của truy vấn trước đó cho thấy gia đình toán tử mỗi lớp toán tử thuộc về:
Chọn Am.AmName dưới dạng index_method, opc.opcname dưới dạng opclass_name, opf.opfname dưới dạng opf Family_name, opc.opcintype :: regtype as indexed_type, opc.opcdefault 토토 결과ư is_default Từ pg_am am, pg_opclass opc, pg_opf Family opf Nơi opc.opcmethod = am.oid và opc.opcf Family = opf.oid Đặt hàng theo index_method, opClass_name;
Truy vấn này hiển thị tất cả các họ vận hành được xác định và tất cả các toán tử có trong mỗi gia đình:
Chọn Am.AmName dưới dạng index_method, opf.opfname dưới dạng opf Family_name, amop.amopopp :: Regoperator là Opf Family_Operator Từ pg_am am, pg_opf Family opf, pg_amop amop WHERE opf.opfmethod = am.oid và amop.amopf Family = opf.oid Đặt hàng theo index_method, opf Family_name, opf Family_operator;
PSQLcó lệ토토 결과\ DAC
, \ DAF
và\ DAO
, cung cấp các phiên bản ti토토 결과 vi hơn một chút của các truy vấn này.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.