범퍼카 토토 생성이름 ( input_data_type[, ...]) (sfunc,state_data_type[, finalfunc =ffunc]Initial_Condition]Sort_Operator]또는 기존 구문범퍼카 토토 생성이름(base_type,sfunc,state_data_type[, finalfunc =ffunc]Initial_Condition]Sort_Operator]
범퍼카 토토 생성새를 정의합니다섹션 9.18. 하나라면범퍼카 토토 생성할 수 있습니다
스키마 이름이 주어진 경우 (예 :범퍼카 토토 생성 myschema.myagg ...) 그런 다음
집계 함수는 이름 및 입력 데이터로 식별됩니다.
범퍼카 토토 함수는 하나 또는 두 개의 일반에서 만들어집니다.sfunc및 선택적 최종 계산ffunc. 이것들은 다음과 같이 사용됩니다
sfunc(내부 상태, 차세대-값) ---> 다음 내부 상태ffunc(내부 상태) ---> 범퍼카 토토 값
PostgreSQL생성 aStype현재 내부 상태를 유지합니다
집계 함수는 초기 조건을 제공 할 수 있습니다텍스트이지만 유효한 외부 여야합니다
상태 전환 함수가 선언 된 경우"엄격한", 널로 호출 할 수 없습니다max
. 이 동작은 사용할 수 있습니다state_data_type동일합니다input_data_type.
상태 전환 기능이 엄격하지 않으면
최종 함수가 선언 된 경우"엄격한"avg
좋아하는 범퍼카 토토Min
또는max
때때로 최적화 될 수 있습니다정렬 연산자. 기본 요구 사항은입니다
탭에서 agg (col)를 선택하십시오.
:와 동일해야합니다.
Sortop Limit 1을 사용하여 COL에 의해 탭에서 COL을 선택하십시오.
추가 가정은 범퍼카 토토가 NULL을 무시한다는 것입니다<운영자는 적절한 정렬 연산자입니다Min
및적절한 정렬 연산자입니다max
. 최적화는 결코 결코 아닙니다""보다 작습니다.또는""보다 크다B-Tree 지수의 전략 멤버
집계의 이름 (선택적으로 스키마 자격)
이 범퍼카 토토 기능의 입력 데이터 유형*목록 대신count (*)
.)
기존 구문에서생성, 입력 데이터 유형은 a에 의해 지정됩니다.BaseType가 아니라 매개 변수BaseTypeas"Any"(아님*).
N-연락 범퍼카 토토 함수,sfunc가져 가야N+1 인수, 첫 번째 존재state_data_type및state_data_type. 이것
범퍼카 토토 상태 값의 데이터 유형.
state_data_type. 반환ffuncISstate_data_type.
상태 값의 초기 설정. 이것은이어야합니다state_data_type. 그렇지 않다면
a 관련 정렬 연산자Min
- 또는max
-같은 집계. 이것은 단지 an입니다
의 매개 변수범퍼카 토토 생성그림이 표시된 순서뿐만 아니라 어떤 순서로든 작성할 수 있습니다.