이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다current버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

토토 결과 사용 기능

대부분의 다른 관계형 데이터베이스 제품과 마찬가지로postgresql집계 함수를 지원합니다. an 집계 함수는 여러 입력에서 단일 결과를 계산합니다 줄. 예를 들어, 계산할 골재가 있습니다.count, Sum, avg(평균),max(최대) 및Min(최소) 세트 인스턴스.

토토 결과 간의 상호 작용을 이해하는 것이 중요합니다 그리고 SQL 's여기서and조항. 의 근본적인 차이여기서andIS 이것:여기서그룹 앞에 입력 행을 선택합니다 그리고 토토 결과는 계산됩니다 (따라서 행이 들어가는 행을 제어합니다. 토토 결과 계산), 반면그룹 및 토토 결과가 계산 된 후 그룹 행을 선택합니다. 따라서, 그만큼여기서조항에는 토토 결과가 포함되지 않을 수 있습니다 기능; 토토 결과를 사용하려고 시도하는 것은 의미가 없습니다. 토토 결과에 입력 할 행을 결정하십시오. 다른 쪽 손,절은 항상 포함되어 있습니다 토토 결과 기능. (엄밀히 말하면, 당신은 a를 쓸 수 있습니다.토토 결과를 사용하지 않는 절, 그러나 그것은 낭비입니다. 같은 조건이 더 많이 사용할 수 있습니다 효율적으로여기서Stage.)

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

날씨에서 MAX (TEMP_LO)를 선택하십시오;
우리가 어느 도시 (또는 도시)를 알고 싶다면 그 독서 일어 났을 때, 우리는 시도 할 수 있습니다
emp_lo = max (temp_lo); 날씨에서 도시를 선택하십시오.
그러나 이것은 토토 결과 이후로 작동하지 않습니다max여기서. 그러나 종종 그렇듯이 쿼리는 의도 된 결과를 달성합니다. 여기에서를 사용하여subSelect:
날씨에서 도시를 선택하십시오
    여기서 temp_lo = (날씨에서 max (temp_lo)를 선택하십시오);
하위 선택이 독립적이기 때문에 괜찮습니다 자체 토토 결과를 계산하는 계산 외부 선택에서 발생합니다.

토토 결과는 또한와 함께 매우 유용합니다그룹 by조항. 예를 들어, 최대 값을 얻을 수 있습니다 각 도시에서 관찰 된 저온

City, Max (Temp_lo) 선택
    날씨에서
    도시 별 그룹;
도시 당 하나의 출력 행을 제공합니다. 우리는 이것을 필터링 할 수 있습니다 그룹화 된 행을 사용하여:
City, Max (Temp_lo) 선택
    날씨에서
    도시 별 그룹
    min (temp_lo) <0;
일부 이하의 독서. 마지막으로, 우리가 도시에만 관심이 있다면 "로 시작하는 사람P", 우리는 할 수 있습니다
City, Max (Temp_lo) 선택
    날씨에서
    도시와 같은 도시 'P%'
    도시 별 그룹
    min (temp_lo) <0;
우리는 도시-이름 제한을 적용 할 수 있습니다어디, 토토 결과가 필요하지 않기 때문입니다. 이것은 더 많다 제한을 추가하는 것보다, 우리는 그룹화를 피하기 때문에 실패하는 모든 행에 대한 토토 결과 계산여기서check.