개발 버전 :Devel
지원되지 않는 버전 :12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2
이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다43토토6463버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

2.7. 젠 토토 기능

기타 관계형 데이터베이스 제품,postgresql지원젠 토토 함수. 젠 토토 기능count, Sum, avg(평균),max(최대) 및Min(최소) 행 세트를 통해.

예를 들어, 우리는 가장 높은 온도 판독 값을 찾을 수 있습니다. 어디서나 :

날씨에서 MAX (TEMP_LO)를 선택하십시오;
MAX-----

우리가 무엇을 알고 싶다면 독서가 발생한 도시 (또는 도시)는 다음과 같이 시도 할 수 있습니다 :

emp_lo = max (temp_lo); 날씨에서 도시를 선택하십시오.잘못된

그러나 이것은 젠 토토 이후로 작동하지 않습니다max여기서절. (이 제한은이기 때문에 존재합니다.여기서절은 어떤 행을 결정합니다 골재 계산에 포함됩니다.SubQuery:

날씨에서 도시를 선택하십시오    여기서 temp_lo = (날씨에서 max (temp_lo)를 선택하십시오);
도시-----------------

하위 쿼리가 독립적 인 계산이기 때문에 괜찮습니다. 일어나는 일과 별도로 자체 젠 토토를 계산합니다.

젠 토토는 또한와 함께 매우 유용합니다그룹 by조항. 예를 들어, 우리는 할 수 있습니다

City, Max (Temp_lo) 선택    날씨에서
도시

도시 당 하나의 출력 행을 제공합니다. 각 집계 결과:

City, Max (Temp_lo) 선택    날씨에서
도시

이것은 가지고있는 도시에 대해서만 동일한 결과를 제공합니다. 모두temp_lo40 미만의 값. 마지막으로, 우리가 이름이 시작되는 도시에만 관심이 있다면"S", 우리는 할 수 있습니다 하다:

City, Max (Temp_lo) 선택    날씨에서(1)도시 별 그룹    Max (temp_lo) <40;
(1)
좋아요운영자는 패턴을 수행합니다 일치하고 설명되어섹션 9.7.

사이의 상호 작용을 이해하는 것이 중요합니다 젠 토토 및SQL's여기서and조항. 의 근본적인 차이여기서andis :여기서그룹 및 젠 토토가 계산되기 전에 입력 행을 선택합니다 (따라서 어떤 행이 젠 토토 계산에 들어가는 지 제어합니다),후 그룹 행을 선택합니다 그룹과 젠 토토가 계산됩니다.여기서조항은 젠 토토 함수를 포함해서는 안됩니다. 집계를 사용하여 어느 쪽을 결정하는 것은 의미가 없습니다.절은 항상 젠 토토를 포함합니다 기능.사용하지 않는 조항 젠 토토이지만 거의 유용하지 않습니다.여기서Stage.)

이전 예에서는 도시 이름을 적용 할 수 있습니다. 제한여기서, 필요 없기 때문에 골재.실패하는 모든 행에 대한 그룹화 및 젠 토토 계산여기서check.