이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 9.22. 창 스포츠 토토버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

9.21. 창 기능

창 기능능력을 제공하다 관련된 행 집합에 대해 계산을 수행합니다. 현재 쿼리 행. 참조4800 |6000 토토 사이트 순위0 |4800 |6000 토토 사이트 순위0 |6000 토토 사이트 순위0 |_4800 |6000 토토 사이트 순위0 |6000 토토 사이트 순위0 |4800 |500 토토 사이트 순위0 |4800 |6000 토토 사이트 순위0 |6000 토토 사이트 순위0 |4800 |4800 |500 토토 사이트 순위0 토토 사이트 순위0 토토 사이트 순위0 |6이 기능에 대한 소개입니다.

내장된 창 기능은 다음에 나열되어 있습니다.표 9-48. 이 기능에 유의하세요.반드시창을 사용하여 호출됩니다. 토토 구문; 그건이상절 필수입니다.

이러한 기능 외에도 내장되거나 사용자 정의된 모든 기능 집계 토토는 창 토토로 사용될 수 있습니다(참조섹션 9.20목록을 보려면 내장 집계). 집계 토토는 창 토토 역할을 합니다. 경우에만이상절은 다음을 따릅니다. 전화하다; 그렇지 않으면 일반 집계로 작동합니다.

표 9-48. 범용 창 함수

기능 반환 유형 설명
row_number() 비긴트 파티션 내의 현재 행 번호, 1부터 계산
순위() 비진트 간격이 있는 현재 행의 순위; 와 동일row_number첫번째 동료
dense_rank() 비긴트 간격 없이 현재 행의 순위; 이 기능 동료 그룹을 계산합니다
퍼센트_순위() 배정밀도 현재 행의 상대 순위: (순위- 1) / (총 행 - 1)
cume_dist() 배정밀도 현재 행의 상대 순위: (행 수 이전 행 또는 현재 행과 피어) / (총 행)
ntile(num_buckets 정수) 정수 1부터 인수 값까지의 정수, 파티션을 가능한 한 균등하게 나누기
지연( 모든 요소 [, 오프셋 정수 [, 기본값 모든 요소 ]]) 동일한 유형 반환행에서 평가됨오프셋현재 행 앞의 행 파티션 내에서; 그러한 행이 없으면 대신 반환기본값(이것은 다음과 같은 유형이어야 합니다.). 둘 다오프셋그리고기본값존중하게 평가됩니다 현재 행으로. 생략된 경우,오프셋기본값은 1이며기본값널로
리드( 모든 요소 [, 오프셋 정수 [, 기본값 모든 요소 ]]) 동일한 유형 반환행에서 평가됨오프셋현재 행 다음 행 파티션 내에서; 그러한 행이 없으면 대신 반환기본값(이것은 다음과 같은 유형이어야 합니다.). 둘 다오프셋그리고기본값존중하게 평가됩니다 현재 행으로. 생략된 경우,오프셋기본값은 1이며기본값널로
첫 번째_값( 모든) 동일한 유형 반환창의 첫 번째 행인 행에서 평가됨 프레임
마지막_값( 모든) 동일한 유형 반환창의 마지막 행인 행에서 평가됨 프레임
n번째_값( 모든, n번째 정수) 동일한 유형 반환행에서 평가됨n번째창틀의 행 (1부터 계산); 해당 행이 없으면 null

다음에 나열된 모든 기능표 9-48다음에 의해 지정된 정렬 순서에 따라 다름주문 기준관련 창의 절 정의. 에서 구별되지 않는 행주문 기준주문은 다음과 같다고 합니다동료; 네 가지 순위 함수는 다음과 같이 정의됩니다. 두 개의 피어 행에 대해 동일한 대답을 제공합니다.

참고첫 번째_값, 마지막_값n번째_값다음 내의 행만 고려"창틀", 기본적으로 파티션의 시작부터 다음까지의 행을 포함합니다. 현재 행의 마지막 피어입니다. 이는 도움이 되지 않을 가능성이 높습니다. 에 대한 결과마지막_값그리고 때로는 또한n번째_값. 당신은 할 수 있습니다 적절한 프레임 사양을 추가하여 프레임을 재정의 (범위또는) 에이상절. 참조섹션 4.2.8프레임 사양에 대한 자세한 내용을 확인하세요.

집계 함수가 창 함수로 사용될 때, 현재 행의 창 프레임 내의 행을 집계합니다. 와 함께 사용되는 집계주문 기준그리고 기본 창 프레임 정의는 다음을 생성합니다."누계액"행동 유형, 그럴 수도 있고 그럴 수도 있음 원하는 것이 아닙니다. 전체에 대한 집계를 얻으려면 파티션, 생략주문 기준또는 사용제한되지 않은 선행 및 다음 행 사이의 행 무한한 팔로잉. 다른 프레임 사양을 사용할 수 있습니다. 다른 효과를 얻으려면.

참고:SQL 표준은 다음을 정의합니다.NULL을 존중또는무시 NULL옵션리드, 지연, 첫 번째_값, 마지막_값n번째_값. 이것은 구현되지 않았습니다.포스트그레SQL: 동작은 다음과 같습니다. 항상 표준 기본값과 동일합니다. 즉,NULL을 존중. 마찬가지로 표준의처음부터또는마지막부터옵션n번째_값구현되지 않았습니다. 기본값처음부터행동은 지원됩니다. (당신은 다음과 같은 결과를 얻을 수 있습니다.마지막부터반전하여주문 기준주문합니다.)