집계 함수

집계 함수는 레코드 세트로부터 단일 값을 반환합니다. 집계 함수를 SELECT 문의 일부로 필드 이름(예: AVG(SALARY))과 함께 사용하거나 열 표현식(예: AVG(SALARY * 1.07))과 결합하여 사용할 수 있습니다.

DISTINCT 연산자와 함께 열 표현식 앞에 지정하여 중복 값을 제거할 수 있습니다.

예제

복사
COUNT (DISTINCT last_name)

이 예제에서 고유한 마지막 이름 값만 계산됩니다.

집계 함수

반환 결과

SUM

숫자 필드 표현식의 값 총계. 예를 들어, SUM(SALARY)는 모든 월급 필드 값의 총계를 반환합니다.

AVG

숫자 필드 표현식의 값 평균. 예를 들어, AVG(SALARY)는 모든 월급 필드 값의 평균을 반환합니다.

COUNT

모든 필드 표현식의 값 수. 예를 들어, COUNT(NAME)은 이름 값의 수를 반환합니다. 필드 이름과 함께 COUNT를 사용하면, COUNT는 null이 아닌 필드 값의 수를 반환합니다. 특수 예제는 COUNT(*)이며, null 값이 있는 레코드를 포함한 세트로 레코드 수를 반환합니다.

MAX

모든 필드 표현식의 최대값. 예를 들어, MAX(SALARY)는 모든 월급 필드 값의 최대값을 반환합니다.

MIN

모든 필드 표현식의 최소값. 예를 들어, MIN(SALARY)는 모든 월급 필드 값의 최소값을 반환합니다.

예제

복사
SELECT SUM (Sales_Data.Amount) AS agg FROM Sales_Data

SELECT AVG (Sales_Data.Amount) AS agg FROM Sales_Data

SELECT COUNT (Sales_Data.Amount) AS agg FROM Sales_Data

SELECT MAX (Sales_Data.Amount) AS agg FROM Sales_Data WHERE Sales_Data.Amount < 3000

SELECT MIN (Sales_Data.Amount) AS agg FROM Sales_Data WHERE Sales_Data.Amount > 3000

집계 함수를 다른 함수에서 인수로 사용할 수 없습니다. 사용하는 경우, FileMaker 소프트웨어에서 오류 코드 8309("집계를 포함한 표현식은 지원되지 않습니다")를 반환합니다. 예를 들어, 집계 함수 SUMROUND 함수의 인수로 사용할 수 없기 때문에 다음 명령문은 유효하지 않습니다.

예제

복사
SELECT ROUND(SUM(Salary), 0) FROM Payroll

하지만 집계 함수는 숫자를 반환하는 함수를 인수로 사용할 수 있습니다. 다음은 유효한 명령문입니다.

예제

복사
SELECT SUM(ROUND(Salary, 0)) FROM Payroll