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
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ại​​Phiê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ế.

9.22. soi kèo bóng đá truoctran sổ#

Hàm soi kèo bóng đá truoctran sổCung cấp khả soi kèo bóng đá truoctran thực hiện các tính toán trên các bộ hàng có liên quan đến hàng truy vấn hiện tại. Nhìn thấyPhần 3.5Để giới thiệu về tính soi kèo bóng đá truoctran này vàPhần 4.2.8Để biết chi tiết cú pháp.

Các soi kèo bóng đá truoctran sổ tích hợp được liệt kê trongBảng 9.67. Lưu ý rằng các chức soi kèo bóng đá truoctran nàyphải10445_10498Overmệnh đề là bắt buộc.

Ngoài các chức soi kèo bóng đá truoctran này, bất kỳ tập hợp thông thường được tích hợp hoặc người dùng nào được xác định bởi người dùng (nghĩa là, không được đặt hàng hoặc tập hợp giả thuyết) có thể được sử dụng làm hàm cửa sổ; nhìn thấy10819_10838Đối với một danh sách các tập hợp tích hợp. Các chức năng tổng hợp chỉ hoạt động như các soi kèo bóng đá truoctran sổ khi mộtOvermệnh đề tuân theo cuộc gọi; Nếu không, chúng hoạt động như các tập hợp đơn giản và trả lại một soi kèo bóng đá truoctran duy nhất cho toàn bộ tập hợp.

Bảng 9.67. soi kèo bóng đá truoctran sổ đa năng

function

Mô tả

Row_Number() →Bigint

Trả về số lượng soi kèo bóng đá truoctran hiện tại trong phân vùng của nó, đếm từ 1.

Xếp hạng() →Bigint

Trả về thứ hạng của soi kèo bóng đá truoctran hiện tại, với các khoảng trống; đó là,Row_Numbercủa soi kèo bóng đá truoctran đầu tiên trong nhóm ngang soi kèo bóng đá truoctran của nó.

Dense_Rank() →12760_12768

Trả về thứ hạng của hàng hiện tại, không có khoảng trống; Chức soi kèo bóng đá truoctran này đếm hiệu quả các nhóm ngang hàng.

phần trăm_rank() →Độ chính xác gấp đôi

Trả về thứ hạng tương đối của soi kèo bóng đá truoctran hiện tại, đó là (Xếp hạng- 1) / (tổng số phân vùng - 1). Giá trị do đó dao động từ 0 đến 1 bao gồm.

cume_dist() →Double Precision

Trả về phân phối tích lũy, nghĩa là (số lượng các soi kèo bóng đá truoctran phân vùng trước hoặc đồng nghiệp với soi kèo bóng đá truoctran hiện tại) / (tổng số các soi kèo bóng đá truoctran phân vùng). Giá trị do đó dao động từ 1/nđến 1.

ntile(num_buckets Số nguyên) →Số nguyên

Trả về số nguyên từ 1 thành giá trị đối số, chia phân vùng càng tốt càng tốt.

LAG(giá trị AnyCompitiated[, Offset Số nguyên[, mặc định 15024_15039]]) →15092_15107

returngiá trịđược đánh giá ở soi kèo bóng đá truoctran đó làOffsetsoi kèo bóng đá truoctran trước soi kèo bóng đá truoctran hiện tại trong phân vùng; Nếu không có soi kèo bóng đá truoctran như vậy, thay vào đó hãy trả vềMặc định(phải là loại tương thích vớigiá trị). Cả haiOffsetMặc địnhđược đánh giá liên quan đến soi kèo bóng đá truoctran hiện tại. Nếu bị bỏ qua,OffsetMặc định là 1 vàmặc địnhđếnnull.

chì(giá trị 16133_16148[, Offset Số nguyên[, Mặc định AnyCompitiated]]) →AnyCompitiated

returngiá trịđược đánh giá ở soi kèo bóng đá truoctran đó là16575_1658316593_16686mặc định(phải là loại tương thích vớigiá trị). Cả haiOffsetmặc địnhđược đánh giá liên quan đến soi kèo bóng đá truoctran hiện tại. Nếu bị bỏ qua,OffsetMặc định là 1 vàmặc địnhđếnnull.

First_value(giá trị AnyEuity) →AnyEuity

returngiá trịĐược đánh giá ở hàng là hàng đầu tiên của khung soi kèo bóng đá truoctran sổ.

last_value(giá trị AnyEuity) →AnyEuity

returngiá trịđược đánh giá ở hàng là hàng cuối cùng của khung soi kèo bóng đá truoctran sổ.

nth_value(giá trị AnyEuity, n Số nguyên) →AnyEuity

returngiá trịđược đánh giá ở soi kèo bóng đá truoctran đó làn'hàng của khung soi kèo bóng đá truoctran sổ (đếm từ 1); trả vềnullNếu không có soi kèo bóng đá truoctran như vậy.


Tất cả các chức soi kèo bóng đá truoctran được liệt kê trongBảng 9.67phụ thuộc vào thứ tự sắp xếp được chỉ định bởiĐặt soi kèo bóng đá truoctran bởimệnh đề của định nghĩa soi kèo bóng đá truoctran sổ liên quan. Hàng không khác biệt khi chỉ xem xétĐặt soi kèo bóng đá truoctran bởiCác cột được cho làPeers. Bốn chức soi kèo bóng đá truoctran xếp hạng (bao gồmcume_dist) được định nghĩa để chúng đưa ra câu trả lời tương tự cho tất cả các soi kèo bóng đá truoctran của một nhóm ngang soi kèo bóng đá truoctran.

Lưu ý rằngFirst_value, last_valuenth_valueChỉ xem xét các soi kèo bóng đá truoctran trongkhung soi kèo bóng đá truoctran sổxông, theo mặc định có chứa các hàng từ đầu phân vùng thông qua ngang hàng cuối cùng của hàng hiện tại. Điều này có khả soi kèo bóng đá truoctran cho kết quả không có ích cholast_valuevà đôi khi cũngnth_value. Bạn có thể xác định lại khung bằng cách thêm một đặc tả khung phù hợp (phạm vi, soi kèo bóng đá truoctranhoặcNhóm) đếnOvermệnh đề. Nhìn thấyPhần 4.2.8Để biết thêm thông tin về thông số kỹ thuật của khung.

Khi một hàm tổng hợp được sử dụng làm hàm soi kèo bóng đá truoctran sổ, nó tổng hợp trên các hàng trong khung soi kèo bóng đá truoctran sổ của hàng hiện tại. Một tổng hợp được sử dụng vớiĐặt soi kèo bóng đá truoctran bởivà Định nghĩa khung soi kèo bóng đá truoctran sổ mặc định tạo ra Achạy sumxôngloại hành vi, có thể hoặc không phải là những gì mong muốn. Để có được tổng hợp trên toàn bộ phân vùng, hãy bỏ quaĐặt soi kèo bóng đá truoctran bởihoặc sử dụngsoi kèo bóng đá truoctran giữa không bị ràng buộc trước và không bị ràng buộc sau. Các thông số kỹ thuật khác có thể được sử dụng để có được các hiệu ứng khác.

Lưu ý

Tiêu chuẩn SQL xác định ATôn trọng NULLShoặcbỏ qua nullsTùy chọn chochì, LAG, first_value, last_valuenth_value. Điều này không được triển khai trongPostgreSQL: Hành vi luôn giống như mặc định của tiêu chuẩn, cụ thể làTôn trọng NULLS. Tương tự như vậy, tiêu chuẩn củaTừ đầu tiênhoặctừ cuốiTùy chọn chonth_valuekhông được triển khai: Chỉ có mặc địnhtừ đầu tiênHành vi được hỗ trợ. (Bạn có thể đạt được kết quả củaTừ cuốibằng cách đảo ngượcĐặt soi kèo bóng đá truoctran bởiĐặt soi kèo bóng đá truoctran.)