이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 토토 사이트 추천 생성버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

젠 토토 생성

젠 토토 생성 - 새로운 집계 함수 정의

시놉시스

생성 [또는 교체] 젠 토토이름([argmode] [argname]arg_data_type[, ...]) (
    sfunc =sfunc,
    stype =state_data_type[, sspace =state_data_size]
    [, finalfunc =ffunc]
    [, finalfunc_extra]
    [, finalfunc_modify = read_only | 공유 가능한 | read_write]
    [, combineFunc =CombineFunc]
    [, serialfunc =SerialFunc]
    [, deserialfunc =deserialfunc]
    [, initcond =Initial_Condition]
    [, msfunc =msfunc]
    [, minvfunc =minvfunc]
    [, mstype =mstate_data_type]
    [, msspace =mstate_data_size]
    [, mfinalfunc =mffunc]
    [, mfinalfunc_extra]
    [, mfinalfunc_modify = read_only | 공유 가능한 | read_write]
    [, minitcond =minitial_condition]
    [, sortop =Sort_Operator]
    [, Parallel = Safe | 제한 | 안전하지 않은]
))

[또는 교체] 젠 토토 생성이름([[Argmode] [argname]arg_data_type[, ...]]
                        [ 주문argmode] [argname]arg_data_type[, ...]) (
    sfunc =sfunc,
    stype =state_data_type[, sspace =state_data_size]
    [, finalfunc =ffunc]
    [, finalfunc_extra]
    [, finalfunc_modify = read_only | 공유 가능한 | read_write]
    [, initcond =Initial_Condition]
    [, Parallel = Safe | 제한 | 안전하지 않은]
    [, 가상]
)또는 오래된 구문생성 [또는 교체] 젠 토토이름(
    BaseType =base_type,
    sfunc =sfunc,
    stype =state_data_type[, sspace =state_data_size]
    [, finalfunc =ffunc]
    [, finalfunc_extra]
    [, finalfunc_modify = read_only | 공유 가능한 | read_write]
    [, combineFunc =CombineFunc]
    [, serialfunc =SerialFunc]
    [, deserialfunc =deserialfunc]
    [, initcond =Initial_Condition]
    [, msfunc =msfunc]
    [, minvfunc =minvfunc]
    [, mstype =MSTATE_DATA_TYPE]
    [, msspace =mstate_data_size]
    [, mfinalfunc =mffunc]
    [, mfinalfunc_extra]
    [, mfinalfunc_modify = read_only | 공유 가능한 | read_write]
    [, minitcond =minitial_condition]
    [, sortop =sort_operator]
)

설명

젠 토토 생성새로운 젠 토토 함수를 정의합니다.젠 토토 생성 또는 교체새 젠 토토 함수를 정의하거나 기존 정의를 대체합니다. 일부 기본적이고 일반적으로 사용되는 젠 토토 함수는 분포에 포함됩니다. 그들은에 문서화되어 있습니다.PostgreSQL : 문서 : 18 : 9.21. 와이즈 토토 기능. 새 유형을 정의하거나 아직 제공되지 않은 젠 토토 함수가 필요한 경우젠 토토 생성원하는 기능을 제공하는 데 사용할 수 있습니다.

기존 정의를 대체 할 때 인수 유형, 결과 유형 및 직접 인수 수가 변경되지 않을 수 있습니다. 또한, 새로운 정의는 오래된 것과 동일한 종류 (일반 젠 토토, 순서 세트 젠 토토 또는 가설 젠 토토)이어야합니다.

스키마 이름이 제공되는 경우 (예 :젠 토토 생성 myschema.myagg ...) 그러면 젠 토토 함수가 지정된 스키마에서 생성됩니다. 그렇지 않으면 현재 스키마에서 생성됩니다.

집계 함수는 이름 및 입력 데이터 유형으로 식별됩니다. 동일한 스키마의 두 집계는 다른 입력 유형에서 작동하는 경우 동일한 이름을 가질 수 있습니다. 집계의 이름 및 입력 데이터 유형은 동일한 스키마의 모든 일반 기능의 이름 및 입력 데이터 유형과도 구별되어야합니다. 이 동작은 일반 기능 이름의 과부하와 동일합니다 (참조기능 생성).

간단한 젠 토토 함수는 하나 또는 두 개의 일반 함수에서 만들어집니다 : 상태 전환 함수sfunc및 선택적 최종 계산 함수ffunc. 이들은 다음과 같이 사용됩니다.

sfunc(내부 상태, 차세대-값) --- 다음 내부 상태ffunc(내부 상태) --- 젠 토토 값

PostgreSQL데이터 유형의 임시 변수 생성Stype젠 토토의 현재 내부 상태를 유지합니다. 각 입력 행에서, 젠 토토 인수 값 (들)이 계산되고 상태 전환 함수는 현재 상태 값과 새로운 인수 값으로 호출되어 새로운 내부 상태 값을 계산합니다. 모든 행이 처리 된 후에는 최종 기능이 한 번 호출되어 젠 토토의 반환 값을 계산합니다. 최종 기능이 없으면 종료 상태 값이 as- as. 반환됩니다.

젠 토토 함수는 초기 조건, 즉 내부 상태 값의 초기 값을 제공 할 수 있습니다. 이것은 데이터베이스에 유형 값으로 지정되고 저장됩니다텍스트, 그러나 상태 값 데이터 유형의 상수를 유효한 외부 표현이어야합니다. 공급되지 않으면 상태 가치가 널에서 시작됩니다.

상태 전환 기능이 선언 된 경우엄격한, 널 입력으로 호출 할 수 없습니다. 이러한 전환 기능을 사용하면 집계 실행이 다음과 같이 동작합니다. 널 입력 값이있는 행은 무시됩니다 (함수는 호출되지 않고 이전 상태 값이 유지됨). 초기 상태 값이 NULL 인 경우 All-Nonnull 입력 값이있는 첫 번째 행에서 첫 번째 인수 값은 상태 값을 대체하고 각 후속 행에서 All-Nonnull 입력 값으로 전환 함수가 호출됩니다. 이것은와 같은 집계를 구현하는 데 편리합니다.max. 이 동작은에만 사용할 수 있습니다.state_data_type첫 번째와 동일합니다arg_data_type. 이러한 유형이 다르면 초기 조건이 아닌 초기 조건을 제공하거나 NAMPLEST 전환 기능을 사용해야합니다.

상태 전환 함수가 엄격하지 않으면 각 입력 행에서 무조건적으로 호출되며 널 입력 및 널 상태 값 자체를 처리해야합니다. 이를 통해 골재 저자는 젠 토토의 널 값 처리를 완전히 제어 할 수 있습니다.

최종 함수가 선언 된 경우엄격한, 결말 상태 값이 null 일 때 호출되지 않습니다. 대신 널 결과가 자동으로 반환됩니다. (물론 이것은 엄격한 함수의 정상적인 동작 일뿐입니다.) 어쨌든 최종 함수는 널 값을 반환 할 수있는 옵션이 있습니다. 예를 들어,의 최종 기능avg입력 행이 0 인 것을 볼 때 NULL을 반환합니다.

때로는 상태 값뿐만 아니라 젠 토토의 입력 값에 해당하는 추가 매개 변수를 취하는 것으로 최종 기능을 선언하는 것이 유용합니다. 이를 수행하는 주된 이유는 최종 기능이 다형성이고 상태 값의 데이터 유형이 결과 유형을 고정하기에 부적절한 경우입니다. 이 추가 매개 변수는 항상 널로 전달됩니다 (따라서 최종 기능이이 엄격하지 않아야합니다.FinalFunc_extra옵션이 사용됨) 그럼에도 불구하고 유효한 매개 변수입니다. 최종 기능은 예를 들어를 사용할 수 있습니다.get_fn_expr_argtype현재 통화에서 실제 인수 유형을 식별하려면.

젠 토토가 선택적으로 지원할 수 있습니다이동 모드, 설명대로섹션 36.12.1. 이를 위해서는 지정해야합니다.msfunc, minvfuncmstype매개 변수 및 선택적으로MSSPACE, mfinalfunc, mfinalfunc_extra, mfinalfunc_modifyMinitcond매개 변수. 을 제외하고minvfunc,이 매개 변수는 해당 단순 응집 매개 변수없이처럼 작동합니다.M; 역 전이 함수를 포함하는 젠 토토의 별도의 구현을 정의합니다.

구문주문 by매개 변수 목록에서 an이라는 특수 유형의 젠 토토를 만듭니다.주문 세트 젠 토토; 또는 if가상지정된 다음 A가상 세트 집계생성되었습니다. 이러한 젠 토토는 정렬 된 값의 그룹에 걸쳐 순서 의존적 방식으로 작동하므로 입력 정렬 순서의 사양은 통화의 필수 부분입니다. 또한, 그들은 가질 수 있습니다Direct인수는 입력 행 당 한 번이 아닌 집계 당 한 번만 평가되는 인수입니다. 가상 세트 골재는 순서대로 인수 열의 숫자 및 데이터 유형에 맞는 직접 인수 중 일부가 필요한 순서 세트 집계의 서브 클래스입니다. 이를 통해 해당 직접 인수의 값은 추가로 집계 입력 행 모음에 추가 될 수 있습니다.가상행.

젠 토토가 선택적으로 지원할 수 있습니다부분 젠 토토, 설명대로섹션 36.12.4. 이를 위해서는 지정해야합니다.CombineFunc매개 변수. 인 경우state_data_typeis내부, 일반적으로를 제공하는 것도 적절합니다SerialFuncanddeserialfunc병렬 응집이 가능하도록 매개 변수. 골재도 표시되어야합니다병렬 금고병렬 젠 토토를 활성화하려면

좋아하는 젠 토토Min또는max모든 입력 행을 스캔하는 대신 인덱스를 살펴보면 때때로 최적화 할 수 있습니다. 이 젠 토토가 그렇게 최적화 될 수 있다면 A를 지정하여 표시하십시오.정렬 연산자. 기본 요구 사항은 젠 토토가 연산자가 유도 한 정렬 순서에서 첫 번째 요소를 산출해야한다는 것입니다. 다시 말해서:

탭에서 agg (col)를 선택하십시오.

:와 동일해야합니다.

Sortop Limit 1을 사용하여 COL에 의해 탭에서 COL을 선택하십시오.

추가 가정은 젠 토토가 널 입력을 무시하고 널 입력이없는 경우에만 널 결과를 전달한다는 것입니다. 일반적으로 데이터 유형<운영자는 적절한 정렬 연산자입니다min적절한 정렬 연산자입니다max. 지정된 연산자가가 아니라면 최적화는 실제로 적용되지 않습니다.또는보다B-Tree Index Operator Class의 전략 멤버.

젠 토토 함수를 만들 수 있으려면usage인수 유형, 상태 유형 및 반환 유형에 대한 권한 및execute지원 기능에 대한 특권.

매개 변수

이름

생성 할 젠 토토 함수의 이름 (선택적으로 스키마 자격).

Argmode

인수의 모드 :in또는variadic. (젠 토토 함수는 지원하지 않습니다Out인수.) 생략하면 기본값은입니다.in. 마지막 인수 만 표시 될 수 있습니다variadic.

argname

인수의 이름. 이것은 현재 문서화 목적에만 유용합니다. 생략하면 인수의 이름이 없습니다.

arg_data_type

이 젠 토토 기능이 작동하는 입력 데이터 유형. 제로 학습 젠 토토 함수를 만들려면 쓰기*인수 사양 목록 대신. (그러한 젠 토토의 예는count (*).)

base_type

기존 구문에서젠 토토 생성, 입력 데이터 유형은 A에 의해 지정됩니다.BaseType집계 이름 옆에 쓰여지지 않고 매개 변수입니다. 이 구문은 하나의 입력 매개 변수 만 허용합니다. 이 구문으로 제로 관점 집계 함수를 정의하려면를 지정하십시오.BaseTypeas"Any"(아님*). 주문 세트 젠 토토는 이전 구문으로 정의 할 수 없습니다.

sfunc

각 입력 행에 대해 호출되는 상태 전환 함수의 이름. 정상n--기간 젠 토토 함수,sfunc가져 가야n+1 인수, 첫 번째 유형의 존재state_data_type그리고 젠 토토의 선언 된 입력 데이터 유형과 일치하는 나머지. 함수는 유형 값을 반환해야합니다state_data_type. 이 함수는 현재 상태 값과 현재 입력 데이터 값을 취하고 다음 상태 값을 반환합니다.

순서 세트 (가상 세트 포함) 집계의 경우, 상태 전이 함수는 직접적인 인수가 아니라 현재 상태 값과 집계 된 인수 만받습니다. 그렇지 않으면 동일합니다.

state_data_type

젠 토토 상태 값의 데이터 유형.

state_data_size

집계 상태 값의 대략적인 평균 크기 (바이트). 이 매개 변수가 생략되었거나 0 인 경우 기본 추정치는에 따라 사용됩니다.state_data_type. 플래너는이 값을 사용하여 그룹화 된 젠 토토 쿼리에 필요한 메모리를 추정합니다.

ffunc

모든 입력 행이 통과 한 후 집계 결과를 계산하기 위해 호출 된 최종 함수의 이름. 정상 집계의 경우이 기능은 유형의 단일 인수를 취해야합니다state_data_type. 젠 토토의 반환 데이터 유형은이 함수의 리턴 유형으로 정의됩니다. 만약에ffunc지정되지 않으면 종료 상태 값이 젠 토토 결과로 사용되며 리턴 유형은입니다.state_data_type.

순서 세트 (가상 세트 포함) 응집체의 경우 최종 기능은 최종 상태 값뿐만 아니라 모든 직접 인수의 값도받습니다..

ifFinalFunc_extra가 지정된 다음 최종 상태 값 및 직접 인수 외에도 최종 함수는 젠 토토의 일반 (젠 토토 된) 인수에 해당하는 추가 널 값을받습니다. 이것은 다형성 젠 토토가 정의 될 때 젠 토토 결과 유형의 올바른 해상도를 허용하는 데 주로 유용합니다.

FinalFunc_Modify=read_only | 공유 가능 | read_write

이 옵션은 최종 기능이 인수를 수정하지 않는 순수한 함수인지 지정합니다.read_only는 그렇지 않음을 나타냅니다. 다른 두 값은 전이 상태 값을 변경할 수 있음을 나타냅니다. 보다노트30578_30619read_only, 기본값이있는 순서 세트 젠 토토를 제외하고read_write.

CombineFunc

theCombineFunc함수가 부분 젠 토토를 지원할 수 있도록 함수는 선택적으로 지정 될 수 있습니다. 제공된 경우combinefunc두 번 결합해야합니다state_data_type값, 각각 입력 값의 일부 하위 집합에 대한 젠 토토 결과를 포함하여 새로운state_data_type이것은 두 입력 세트를 젠 토토 한 결과를 나타냅니다. 이 기능은로 생각할 수 있습니다.sfunc, 개별 입력 행에 작용하여 실행중인 젠 토토 상태에 추가하는 대신 다른 젠 토토 상태를 실행 상태에 추가합니다..

theCombineFuncstate_data_type그리고 값을 반환state_data_type. 선택적 으로이 함수는 일 수 있습니다.엄격한. 이 경우 입력 상태 중 하나가 NULL 일 때 함수는 호출되지 않습니다. 다른 상태는 올바른 결과로 간주됩니다.

젠 토토 함수의 경우state_data_typeis내부,CombineFunc엄격하지 않아야합니다. 이 경우CombineFunc널 상태가 올바르게 처리되고 반환되는 상태가 집계 메모리 컨텍스트에 올바르게 저장되어 있는지 확인해야합니다.

SerialFunc

젠 토토 함수의state_data_typeis내부a에만 병렬 젠 토토에 참여할 수 있습니다SerialFunc함수, 젠 토토 상태를 A로 직렬화해야합니다BYTEA다른 프로세스로의 전송 값. 이 기능은 유형의 단일 인수를 취해야합니다내부및 리턴 유형BYTEA. 해당deserialfunc도 필요합니다.

deserialfunc

이전에 직렬화 된 젠 토토 상태를 다시 제외하고state_data_type. 이 기능은 유형의 두 가지 인수를 취해야합니다BYTEAand내부, 유형의 결과를 생성내부. (참고 : 두 번째,내부인수는 사용되지 않지만 유형 안전 이유에는 필요합니다.)

Initial_Condition

상태 값의 초기 설정. 이것은 데이터 유형에 허용되는 양식의 문자열 상수 여야합니다state_data_type. 지정되지 않으면 상태 값이 NULL에서 시작합니다.

msfunc

이동 응집 모드에서 각 입력 행에 대해 호출되는 전방 상태 전환 함수의 이름. 이것은 첫 번째 인수와 결과가 유형이라는 점을 제외하고는 일반 전환 기능과 똑같습니다.MSTATE_DATA_TYPEstate_data_type.

minvfunc

이동 응집 모드에서 사용되는 역 상태 전이 함수의 이름. 이 함수는 동일한 인수와 결과 유형이와 동일합니다.msfunc이지만 값을 추가하는 대신 현재 젠 토토 상태에서 값을 제거하는 데 사용됩니다. 역 전이 함수는 전방 상태 전환 함수와 동일한 엄격성 속성을 가져야합니다.

MSTATE_DATA_TYPE

이동 응집 모드를 사용할 때 젠 토토 상태 값의 데이터 유형.

mstate_data_size

이동 응집 모드를 사용할 때 집계 상태 값의 대략적인 평균 크기 (바이트). 이것은와 동일하게 작동합니다.state_data_size.

mffunc

이동 응집 모드를 사용할 때 모든 입력 행이 트래버스 된 후 집계 결과를 계산하기 위해 호출 된 최종 함수의 이름. 이것은와 동일하게 작동합니다.ffunc, 첫 번째 인수 유형이임을 제외하고는MSTATE_DATA_TYPE그리고 엑스트라 더미 인수는 쓰기로 지정됩니다mfinalfunc_extra. 에 의해 결정된 젠 토토 결과 유형mffunc또는MSTATE_DATA_TYPE젠 토토의 정기 구현에 의해 결정된 것과 일치해야합니다.

mfinalfunc_modify=read_only | 공유 가능 | read_write

이 옵션은FinalFunc_Modify, 그러나 이동 최종 기능의 동작을 설명합니다.

minitial_condition

이동 응집 모드를 사용할 때 상태 값의 초기 설정. 이것은와 동일하게 작동합니다.Initial_Condition.

Sort_Operator

a 관련 정렬 연산자Min- 또는max-같은 집계. 이것은 단지 연산자 이름입니다 (아마도 스키마 자격이있을 수 있음). 연산자는 집계와 동일한 입력 데이터 유형을 가지고 있다고 가정합니다 (단일 연계 정상 집계 여야합니다).

parallel =안전 | 제한 | 안전하지 않은

의 의미Parallel Safe, 병렬 제한병렬 불안한기능 생성. 표시된 경우 병렬화를 위해 젠 토토가 고려되지 않습니다병렬 불안한(기본값입니다!) 또는병렬 제한. 골재 지원 함수의 평행 안전 표시는 플래너가 문의하지 않고 집계 자체의 표시 만 참조합니다..

가상

순서 세트 집계에 대해서만,이 플래그는 집계 인수가 가상 세트 응집체에 대한 요구 사항에 따라 처리되어야 함을 지정합니다. 즉, 마지막 몇 가지 직접 인수는 집계 된 데이터 유형과 일치해야합니다 (.그룹 내) 인수. 그만큼가상플래그는 런타임 동작에 영향을 미치지 않으며, 데이터 유형의 구문 분석 시간 해결 및 집계 인수의 콜라이트에만 영향을 미치지 않습니다..

의 매개 변수젠 토토 생성위에 표시된 순서뿐만 아니라 어떤 순서로든 작성할 수 있습니다.

노트

지원 함수 이름을 지정하는 매개 변수에서 필요한 경우 스키마 이름을 쓸 수 있습니다 (예 :sfunc = public.sum. 그러나 인수 유형을 작성하지 마십시오. 지원 기능의 인수 유형은 다른 매개 변수에서 결정됩니다.

일반적으로 PostgreSQL 함수는 입력 값을 수정하지 않는 실제 함수 일 것으로 예상됩니다. 그러나 골재 전이 함수젠 토토의 맥락에서 사용될 때, 전환 상태 논쟁을 속이고 수정할 수 있습니다. 이것은 매번 전환 상태의 새로운 사본을 만드는 것과 비교하여 상당한 성능 이점을 제공 할 수 있습니다.

마찬가지로, 젠 토토 최종 함수는 일반적으로 입력 값을 수정하지 않을 것으로 예상되는 반면, 전환 상태 인수를 수정하지 않는 것은 때로는 실용적이지 않습니다. 그러한 행동은를 사용하여 선언해야합니다.FinalFunc_Modify매개 변수. 그만큼read_write값은 최종 함수가 전이 상태를 지정되지 않은 방식으로 수정 함을 나타냅니다. 이 값은 윈도우 함수로 젠 토토를 사용하는 것을 방지하고 동일한 입력 값과 전환 함수를 공유하는 젠 토토 통화에 대한 전이 상태를 병합하는 것을 방지합니다. 그만큼공유 가능값은 최종 함수 후에 전환 함수를 적용 할 수 없지만 종료 전환 상태 값에서 여러 최종 기능 호출을 수행 할 수 있음을 나타냅니다. 이 값은 윈도우 함수로 젠 토토를 사용하지 않지만 전이 상태를 병합 할 수 있습니다. (즉, 여기서 관심의 최적화는 동일한 최종 기능을 반복적으로 적용하지 않지만 동일한 결말 전환 상태 값에 다른 최종 함수를 적용합니다. 이는 최종 함수 중 어느 것도 표시되지 않는 한 허용됩니다read_write.)

젠 토토가 이동 응집 모드를 지원하면 골재가 움직이는 프레임 시작이있는 창의 창 함수로 사용되면 계산 효율을 향상시킵니다 (즉, 프레임 시작 모드는미리 알려지지 않은). 개념적으로, 순방향 전환 함수는 하단에서 창 프레임을 입력 할 때 입력 값을 집계 상태에 추가하고, 역 전이 함수는 프레임을 상단에두면 다시 제거합니다. 따라서 값이 제거되면 항상 추가 된 순서로 항상 제거됩니다. 역전 전이 함수가 호출 될 때마다 가장 빨리 추가되었지만 아직 제거되지 않은 인수 값이 수신됩니다. 역 전이 함수는 가장 오래된 행을 제거한 후 적어도 하나의 행이 현재 상태에 남아 있다고 가정 할 수 있습니다. (그렇지 않은 경우, 윈도우 함수 메커니즘은 역전 전이 함수를 사용하기보다는 단순히 새로운 집계를 시작합니다.)

이동 응집 모드의 순방향 전환 함수는 새로운 상태 값으로 NULL을 반환 할 수 없습니다. 역 전이 함수가 NULL을 반환하면 역 함수 가이 특정 입력에 대한 상태 계산을 역전시킬 수 없다는 표시로 간주되므로 총 계산은 현재 프레임 시작 위치에 대해 처음부터 다시 작성됩니다. 이 협약은 실행중인 상태 값을 뒤집어 놓는 데 실용적이지 않은 일부 드문 경우가있는 상황에서 이동 모드를 사용할 수 있습니다.

이동 응집 구현이 제공되지 않으면 젠 토토는 여전히 움직이는 프레임과 함께 사용할 수 있지만PostgreSQL프레임의 시작이 움직일 때마다 전체 젠 토토를 다시 컴퓨팅합니다. 젠 토토가 이동 응집 모드를 지원하는지 여부에 유의하십시오.PostgreSQL재 계산없이 움직이는 프레임 끝을 처리 할 수 있습니다. 이것은 젠 토토 상태에 새로운 값을 계속 추가하여 수행됩니다. 그렇기 때문에 창 함수로 젠 토토를 사용하는 이유는 최종 함수를 읽기 전용해야합니다. 골재의 상태 값을 손상시키지 않아야하므로 골재가 한 세트의 프레임 경계에 대해 골재 결과 값이 얻어진 후에도 젠 토토가 계속 될 수 있습니다..

순서 세트 집계의 구문이 허용variadic마지막 직접 매개 변수와 마지막 집계 된 ( 모두에 대해 지정됩니다.그룹 내) 매개 변수. 그러나 현재 구현은의 사용을 제한합니다.variadic두 가지 방법으로. 첫째, 순서 세트 젠 토토는 만 사용할 수 있습니다Variadic "Any", 다른 변수 배열 유형이 아닙니다. 둘째, 마지막 직접 매개 변수가 인 경우variadic "any"Variadic "Any". (시스템 카탈로그에 사용 된 표현 에서이 두 매개 변수는 단일로 병합됩니다Variadic "Any"이후PG_PROC하나 이상의 함수를 나타내지 않을 수 있습니다variadic매개 변수.) 집계가 가상 세트 집계 인 경우와 일치하는 직접 인수Variadic "Any"매개 변수는 가상의 것입니다. 앞의 모든 매개 변수는 집계 된 인수와 일치하도록 제한되지 않은 추가 직접 인수를 나타냅니다.

현재, 순서 세트 젠 토토는 창 함수로 사용할 수 없으므로 이동 응집 모드를 지원할 필요가 없습니다.

부분 (병렬 포함) 젠 토토는 현재 순서 세트 젠 토토에 대해 지원되지 않습니다. 또한 포함의 젠 토토 통화에는 결코 사용되지 않습니다.별도의또는주문 by조항, 부분적 젠 토토 중에 이러한 의미를 뒷받침 할 수 없기 때문에

호환성

젠 토토 생성isPostgreSQL언어 확장. SQL 표준은 사용자 정의 젠 토토 함수를 제공하지 않습니다.