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
tỷ lệ kèo bóng đá tối 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 tỷ lệ kèo bóng đá tối nay phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

tỷ lệ kèo bóng đá tối nayF.31. PG_TRGM

ThePG_TRGMMô -đun cung cấp tỷ lệ kèo bóng đá tối nay chức năng và toán tử để xác định sự giống nhau của văn bản chữ và số dựa trên kết hợp Trigram, cũng như tỷ lệ kèo bóng đá tối nay lớp toán tử chỉ mục hỗ trợ tìm kiếm nhanh tỷ lệ kèo bóng đá tối nay chuỗi tương tự.

F.31.1. tỷ lệ kèo bóng đá tối nay khái niệm Trigram (hoặc Trigraph)

Trigram là một nhóm gồm ba ký tự liên tiếp được lấy từ một chuỗi. Chúng ta có thể đo lường sự giống nhau của hai chuỗi bằng cách đếm số lượng trigram mà họ chia sẻ. Ý tưởng đơn giản này hóa ra rất hiệu quả để đo lường sự giống nhau của tỷ lệ kèo bóng đá tối nay từ trong nhiều ngôn ngữ tự nhiên.

Lưu ý: PG_TRGMBỏ qua tỷ lệ kèo bóng đá tối nay ký tự không từ (không phải là Alphanumeric) khi trích xuất Trigrams từ một chuỗi. Mỗi từ được coi là có hai khoảng trắng có tiền tố và một không gian được hậu tố khi xác định tập hợp tỷ lệ kèo bóng đá tối nay trigram có trong chuỗi. Ví dụ: tập hợp tỷ lệ kèo bóng đá tối nay trigram trong chuỗi"CAT""C", "CA", "CAT""at". Tập hợp tỷ lệ kèo bóng đá tối nay trigram trong chuỗi"foo | Bar""f", "fo", "foo", "OO", "B", "BA", "Bar""AR".

F.31.2. Chức năng và toán tử

tỷ lệ kèo bóng đá tối nay chức năng được cung cấp bởiPG_TRGMMô -đun được hiển thị trongBảng F-24, toán tử trongBảng F-25.

Bảng F-24.PG_TRGMchức năng

function return Mô tả
Tương tự (văn bản, văn bản) 11657_11663 Trả về một số cho biết hai đối số tương tự như thế nào. Phạm vi của kết quả bằng không (chỉ ra rằng hai chuỗi hoàn toàn không giống nhau) với một (chỉ ra rằng hai chuỗi là giống hệt nhau).
show_trgm (văn bản) Text [] Trả về một mảng của tất cả tỷ lệ kèo bóng đá tối nay trigram trong chuỗi đã cho. (Trong thực tế, điều này hiếm khi hữu ích ngoại trừ gỡ lỗi.)
show_limit () Real Trả về ngưỡng tương tự hiện tại được sử dụng bởi%toán tử. Điều này đặt ra sự tương đồng tối thiểu giữa hai từ để chúng được coi là đủ tương tự để là lỗi chính tả của nhau, ví dụ.
set_limit (real) Real Đặt ngưỡng tương tự hiện tại được sử dụng bởi%toán tử. Ngưỡng phải nằm trong khoảng từ 0 đến 1 (mặc định là 0,3). Trả về cùng một giá trị được truyền vào.

Bảng F-25.PG_TRGMtoán tử

Nhà điều hành return Mô tả
Text % Text Boolean returnTRUENếu tỷ lệ kèo bóng đá tối nay đối số của nó có sự tương đồng lớn hơn ngưỡng tương tự hiện tại được đặt bởiset_limit.
Text <- Text Real Trả về"Khoảng cách"Giữa tỷ lệ kèo bóng đá tối nay đối số, đó là một trừ điTương tự ()giá trị.

F.31.3. Hỗ trợ chỉ tỷ lệ kèo bóng đá tối nay

ThePG_TRGM13882_14166như, ilike, ~~*Truy vấn. .

Ví dụ:

Tạo bảng test_trgm (t văn bản);
Tạo chỉ tỷ lệ kèo bóng đá tối nay TRGM_IDX trên test_trgm

hoặc

14602_14666

Tại thời điểm này, bạn sẽ có một chỉ tỷ lệ kèo bóng đá tối nay trênTCột mà bạn có thể sử dụng để tìm kiếm tương tự. Một truy vấn điển hình là

Chọn t, độ tương tự (t, 'Word') như sml
  Từ test_trgm
  WHERE T % 'Word'
  Đặt hàng bởi sml desc, t;

Điều này sẽ trả về tất cả tỷ lệ kèo bóng đá tối nay giá trị trong cột văn bản đủ giống vớiWord, được sắp xếp từ trận đấu tốt nhất đến tồi tệ nhất. Chỉ mục sẽ được sử dụng để biến điều này thành một hoạt động nhanh ngay cả trên tỷ lệ kèo bóng đá tối nay bộ dữ liệu rất lớn.

Một biến thể của truy vấn trên là

Chọn T, T <- 'Word' Như Dist
  Từ test_trgm
  Đặt hàng theo giới hạn dist 10;

Điều này có thể được triển khai khá hiệu quả bởi tỷ lệ kèo bóng đá tối nay chỉ mục GIST, nhưng không phải bởi tỷ lệ kèo bóng đá tối nay chỉ mục gin. Nó thường sẽ đánh bại công thức đầu tiên khi chỉ có một số lượng nhỏ tỷ lệ kèo bóng đá tối nay trận đấu gần nhất được muốn.

Bắt đầu trongPostgreSQL9.1, tỷ lệ kèo bóng đá tối nay loại chỉ mục này cũng hỗ trợ tìm kiếm chỉ mục chonhưilike, ví dụ

Chọn * từ test_trgm trong đó t thích '%foo%bar';

15923_16188

Bắt đầu trongPostgreSQL16250_16336~~*Người vận hành), ví dụ

Chọn * từ test_trgm trong đó t ~ '(foo | bar)';

Tìm kiếm chỉ mục hoạt động bằng cách trích xuất trigram từ biểu thức chính quy và sau đó tìm kiếm chúng trong chỉ mục. Càng nhiều trigram có thể được trích xuất từ ​​biểu thức chính quy, tìm kiếm chỉ mục càng hiệu quả. Không giống như tỷ lệ kèo bóng đá tối nay tìm kiếm dựa trên cây B, chuỗi tìm kiếm không cần phải được neo còn lại.

cho cả hainhưVà tỷ lệ kèo bóng đá tối nay tìm kiếm biểu hiện thông thường, hãy nhớ rằng một mẫu không có trigram có thể trích xuất sẽ thoái hóa thành quét toàn bộ chỉ số.

Sự lựa chọn giữa lập chỉ mục GIST và GIIN phụ thuộc vào tỷ lệ kèo bóng đá tối nay đặc điểm hiệu suất tương đối của GIST và GIN, được thảo luận ở nơi khác. Theo nguyên tắc thông thường, chỉ mục gin nhanh hơn để tìm kiếm so với chỉ mục GIST, nhưng chậm hơn để xây dựng hoặc cập nhật; Vì vậy, Gin phù hợp hơn với dữ liệu tĩnh và GIST cho dữ liệu thường được cập nhật.

F.31.4. Tích hợp tìm kiếm văn bản

Kết hợp Trigram là một công cụ rất hữu ích khi được sử dụng cùng với chỉ mục văn bản đầy đủ. Cụ thể, nó có thể giúp nhận ra tỷ lệ kèo bóng đá tối nay từ đầu vào sai chính tả sẽ không được khớp trực tiếp bởi cơ chế tìm kiếm văn bản đầy đủ.

Bước đầu tiên là tạo bảng phụ trợ chứa tất cả tỷ lệ kèo bóng đá tối nay từ duy nhất trong tài liệu:

Tạo tỷ lệ kèo bóng đá tối nay từ bảng như chọn từ từ
        ts_stat ('Chọn to_tsVector (' 'đơn giản' ', bodytext) từ tài liệu');

WHEREtỷ lệ kèo bóng đá tối naylà một bảng có trường văn bản18010_18020mà chúng tôi muốn tìm kiếm. Lý do sử dụngđơn giản18104_18130to_tsVectorHàm, thay vì sử dụng cấu hình dành riêng cho ngôn ngữ, là chúng tôi muốn có một danh sách tỷ lệ kèo bóng đá tối nay từ gốc (unstemmed).

Tiếp theo, tạo chỉ tỷ lệ kèo bóng đá tối nay Trigram trên cột từ:

18378_18441

Bây giờ, AChọnTruy vấn tương tự như ví dụ trước có thể được sử dụng để đề xuất tỷ lệ kèo bóng đá tối nay cách viết cho tỷ lệ kèo bóng đá tối nay từ sai chính tả trong tỷ lệ kèo bóng đá tối nay thuật ngữ tìm kiếm người dùng. Một bài kiểm tra bổ sung hữu ích là yêu cầu tỷ lệ kèo bóng đá tối nay từ đã chọn cũng có độ dài tương tự như từ sai chính tả.

18766_18773kể từWordsBảng đã được tạo thành một bảng tĩnh, riêng biệt, nó sẽ cần được tái tạo định kỳ để nó vẫn được cập nhật hợp lý với bộ sưu tập tỷ lệ kèo bóng đá tối nay. Giữ nó chính xác hiện tại thường không cần thiết.

F.31.6. Tác giả

Oleg Bartunov, Moscow, Đại học Moscow, Nga

Teodor Sigaev, Moscow, Delta-Soft Ltd., Nga

tỷ lệ kèo bóng đá tối nay: Christopher Kings-Lynne

Mô-đun này được tỷ lệ kèo bóng đá tối nay trợ bởi Delta-Soft Ltd., Moscow, Nga.