Phiên bản được hỗ trợ:16 / 15 / 14 / 13
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2
Tài kèo bóng đá hom nay 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ế.

56.2. kèo bóng đá hom nay

sp-gistcung cấp một giao diệnsp-gistCore chịu trách nhiệm

Bộ đôi lá kèo bóng đá hom nay mộtsp-gistCây chứa các giá trị của cùng loại dữ kèo bóng đá hom nay với cột được lập chỉ mục.

Bộ dữ kèo bóng đá hom nay bên trong phức tạp hơn, vì chúng là điểm phân nhánhnút, đại diện cho các nhóm tương tựnhãnmô tả nó; Ví dụ, trong một radixtiền tốGiá trị mô tả tất cả các thành viên kèo bóng đá hom nay nó. Trong a

Một số thuật toán cây yêu cầu kiến ​​thức về cấp độ (hoặc độ sâu) kèo bóng đá hom naysp-gistCore cung cấp kèo bóng đá hom nay cho

Lưu ý:Thesp-gistCoresp-gistIndexes do lưu trữ các mục nhập cho nulls trongsp-gistNgười vận hành nghiêm ngặt và do đó không thể

Có năm phương pháp do người dùng định nghĩasp-gistphải cung cấp. Tất cảNội bộĐối số, lần đầu tiên là con trỏ tớivoid, vì tất cả các kết quả kèo bóng đá hom nay chúng xuất hiện trong đầu raLeaf_consistentNgoài ra trả về ABooleanKết quả. Các

Năm phương thức do người dùng định nghĩa là:

config

Trả về thông tin tĩnh về triển khai chỉ mục,

TheSQLTuyên bố kèo bóng đá hom nay

Tạo hàm my_config (nội bộ, nội bộ) trả về void ...

Đối số đầu tiên là con trỏ tớispgconfiginC struct, chứa dữ kèo bóng đá hom nay đầu vào chospgconfigoutC struct, mà chức năng phải

typedef struct spgconfigin

atttypeđược thông qua để

Đối với các lớp toán tử không sử dụng tiền tố,PrefixTypecó thể được đặt thànhVOIDOID. Tương tự như vậy, đối với các lớp vận hành khôngLabelTypecó thể được đặtVOIDOID. CanreturnDatanên được đặt đúng nếu người vận hànhLongValuesoknên được đặt đúngatttypelà biếnPhần 56.3.1).

Chọn

Chọn phương thức chèn giá trị mới vào bên trong

TheSQLTuyên bố kèo bóng đá hom nay

Tạo chức năng my_choose (nội bộ, nội bộ) trả về void ...

Đối số đầu tiên là một con trỏ tớispgchooseinC struct, chứa dữ kèo bóng đá hom nay đầu vào chospgchooseoutC struct, mà chức năng phải

typedef struct spgchoosein

Datumlà mốc gốc ban đầu màLeafDatumban đầu giống nhưDatum, nhưng có thể thay đổi ở mức thấp hơn kèo bóng đá hom nayChọnhoặcpicksplitPhương pháp thay đổi nó. Khi chènLeafDatumlà những gì sẽ được lưu trữ trongcấpAllthesamelà đúng nếu dòng điệnPhần).Hasprefixlà đúng nếuprefixdatumlà giá trị kèo bóng đá hom nay nó.nnodeslà số nút con có trongNodelabelslà một

TheChọnHàm có thể xác định

Nếu giá trị mới khớp với một trong các nút con hiện có, SETresultTypeđếnSPGMatchNode. BộNodenđến chỉ mục (từ 0) kèo bóng đá hom nay nút đó trong mảng nút. BộLeveladdđến mức tăng trongCấpgây ra do giảm dần quarestdatumđến bằngDatumNếu lớp toán tử khôngLeafDatumở cấp độ tiếp theo.

Nếu phải thêm nút con mới, đặtresultTypeđếnspgaddnode. BộNodelabelđến nhãn được sử dụng cho cái mớiNodenđến chỉ mục (từChọnHàmSPGMatchNoderesult.

Nếu giá trị mới không phù hợp với tiền tố tuple, setresultTypeđếnspgsplittuple. Hành động này di chuyển tất cả cácprefixhasprefixĐể cho biết kèo bóng đá hom nay cái mới cóprefixprefixdatumvới giá trị tiền tố. Cái mới nàyNodelabelđến nhãn được sử dụng cho nútPostfixhasprefixĐể cho biết kèo bóng đá hom nay mới cóPostfixPrefixDatumđến tiền tốChọnHàm sẽ được gọi lại vớispgaddnodeKết quả, vì có lẽ làSPGMatchNodevà cho phép chèn vào

picksplit

Quyết định kèo bóng đá hom naym thế nào để tạo một bộ ba bên trong mới trên một bộ lá

TheSQLTuyên bố kèo bóng đá hom nay

Tạo hàm my_picksplit (nội bộ, nội bộ) trả về void ...

Đối số đầu tiên là con trỏ tớispgpicksplitinC struct, chứa dữ kèo bóng đá hom nay đầu vàospgpicksplitoutC struct, mà chức năng phải

typedef struct spgpicksplitin

ntupleslà số lượng láDatumslà một mảngcấp

setHasprefixĐể cho biết kèo bóng đá hom nayprefixdatumvới giá trị tiền tố. Bộnnodesđể chỉ ra số lượng nút màNodelabelsđến một mảng các giá trị nhãn kèo bóng đá hom nay chúng.Nodelabelsđến null; nhìn thấyPhần 56.3.2Để biết chi tiết.) ĐặtMaptuplestonodesđếnLEAFTUPLEDATUMSđến một mảng các giá trịDatumsNếu lớp toán tử khôngpicksplitChức năng chịu trách nhiệm choNodelabels, MaptuplestonodesLEAFTUPLEDATUMSmảng.

Nếu có nhiều hơn một tuple được cung cấp, dự kiếnPickSplitHàm sẽ phân loại chúngPickSplitHàm cuối cùng đặt tất cả các láAllthesameĐể biểu thị điều đóChọnInside_consistentCác chức năng phải thực hiệnPhần 56.3.3Để biết thêm thông tin.

PickSplitcó thể được áp dụng cho aconfigbộ chức năngLongValuesokđến đúng và lớn hơn một trangPhần 56.3.1cho

Inside_consistent

Trả về bộ nút (nhánh) để theo dõi trong cây

TheSQLTuyên bố kèo bóng đá hom nay

Tạo hàm my_inner_consistent (nội bộ, nội bộ) trả về void ...

Đối số đầu tiên là một con trỏ tớispginnerconsistentinC struct, chứa đầu vàospginnerconsistentoutC struct, mà

Typedef struct spginnerconsistentin

mảngScackkeys, kèo bóng đá hom nay độ dàiNKEYS, mô tả tìm kiếm chỉ mụcNKEYS= 0 ngụ ý rằng tất cả chỉ mụcSK_Strargetysk_argumentTrường kèo bóng đá hom nay mỗi mảngSK_FLAGSĐể xem kèo bóng đá hom nay so sánhTái tạoValue(Datum) 0Ở cấp độ gốc hoặc nếuInside_consistentHàm không cung cấp giá trịCấpreturnDataTRUENếu cần phải xây dựng lại dữ kèo bóng đá hom nay cho việc nàyconfigchức năng được xác nhậnCanreturnData. Allthesamelà sự thật nếu bộ tuple bên trong hiện tại là"Tất cả-Same"; Trong trường hợp này tất cảPhần).Hasprefixlà đúng nếuprefixdatumlà giá trị kèo bóng đá hom nay nó.nnodeslà số nút con có trongNodelabelslà một

nnodesphải được đặt thành số lượngNodenumbersphải được đặt thành một mảng kèo bóng đá hom nay chúngLeveladdsđến một mảng kèo bóng đá hom nay cấp độTái thiếtđến một mảng các giá trịTái tạoValuesnhư null. Lưu ý rằngInside_consistentHàm làNodenumbers, LevelAddsTái tạoValuesmảng.

Leaf_consistent

Trả về đúng nếu một tuple lá thỏa mãn truy vấn.

TheSQLTuyên bố kèo bóng đá hom nay

Tạo hàm my_leaf_consistent (nội bộ, nội bộ) trả về Bool ...

Đối số đầu tiên là con trỏ tớispgleafconsistentinC struct, chứa đầu vàospgleafconsistentoutC Struct, mà

Typedef struct spgleafconsistentin

mảngDickkeys, độ dàiNKEYS, mô tả tìm kiếm chỉ mụcNKEYS= 0 ngụ ý rằng tất cả chỉ mụcSK_STREGARYsk_argumentTrường kèo bóng đá hom nay mỗi mảngSK_FLAGSĐể xem kèo bóng đá hom nay so sánhTái thiết(Datum) 0Ở cấp độ gốc hoặc nếuInside_consistentHàm không cung cấp giá trịCấpreturnDataTRUENếu cần phải xây dựng lại dữ kèo bóng đá hom nay cho việc nàyconfigChức năng được xác nhậnCanreturnData. LeafDatumlà giá trị khóa được lưu trữ trong dòng điện

Hàm phải trả vềTRUENếuSaiNếuTRUEtrường hợp, nếureturnDataTRUEsau đóLEAFVALUEphải được đặt thành giá trịRecheckcó thể được đặt thànhTRUENếu trận đấu không chắc chắn và do đó

Tất cả các phương pháp hỗ trợ sp-gist thường được gọi trongcurrentMemoryContextSẽ được đặt lại sau khi xử lýconfigPhương pháp là một ngoại lệ: Nó nên cố gắngconfigPhương pháp không cần kèo bóng đá hom naym gì ngoài việc gán

Nếu cột được lập chỉ mục thuộc loại dữ kèo bóng đá hom nay có thể có được, chỉ mụcpg_get_collation ()cơ chế.