Aggregation Functions
Coddy SQL 여정의 기초 섹션에 포함된 레슨 — 72개 중 68번째.
집계 함수는 현재 행까지의 AVG() 또는 MAX() 또는 기타 집계 함수를 계산하는 데 사용됩니다.
예를 들어, 각 종료 기간까지의 최대 수익을 계산할 수 있습니다:
| 월 | 매출 | 지역 |
| 4 | 40 | 동부 |
| 5 | 20 | 동부 |
| 6 | 60 | 서부 |
| 7 | 55 | 서부 |
| 8 | 61 | 동부 |
SELECT month, revenue, MAX(revenue) OVER (ORDER BY month ASC) as max_revenue
from table1이것은 반환합니다:
| 월 | 수익 | 최대_수익 |
| 4 | 40 | 40 |
| 5 | 20 | 40 |
| 6 | 60 | 60 |
| 7 | 55 | 60 |
| 8 | 61 | 61 |
4월과 5월의 최대 수익은 40이며, 5월과 6월의 수익은 60이고, 8월의 경우 61입니다. 이는 새로운 더 큰 수익을 발견하면 이전 것을 버리고 지금까지의 가장 큰 것을 사용하기 때문입니다.
AVG() 함수의 경우 다음과 같습니다:
SELECT month, revenue, AVG(revenue) OVER (ORDER BY month ASC) as avg_revenue
from table1| 월 | 매출 | 평균 매출 |
| 4 | 40 | 40 |
| 5 | 20 | 30 |
| 6 | 60 | 40 |
| 7 | 55 | 43.75 |
| 8 | 61 | 47.2 |
PARTITION BY를 사용하여 특정 카테고리로 계산을 그룹화할 수도 있습니다. 예를 들어:
SELECT month, revenue, region,
MAX(revenue) OVER (PARTITION BY region ORDER BY month ASC) as max_revenue
FROM table1다음과 같은 결과를 주게 됩니다:
| 월 | 매출 | 지역 | 최대_매출 |
| 4 | 40 | 동부 | 40 |
| 5 | 20 | 동부 | 40 |
| 6 | 60 | 서부 | 60 |
| 7 | 55 | 서부 | 60 |
| 8 | 61 | 동부 | 61 |
이제 각 지역에 대해 최대값이 별도로 계산됩니다. East 지역과 West 지역은 각각 독립적으로 자신의 실행 최대값을 유지합니다.
챌린지
쉬움사용 가능한 테이블 및 열:
<strong>books</strong>:<strong>book</strong>,<strong>page</strong>,<strong>words</strong>
각 책에 대해 책 이름, 총 페이지 수, 각 페이지의 단어 수를 표시하고, 다음을 계산하세요:
- 그 책의 어떤 페이지에서 발견된 최대 단어 수
- 전체 책의 페이지당 평균 단어 수
- 현재 페이지의 단어 수와 책의 페이지당 평균 단어 수 간의 차이
결과를 책과 페이지 번호로 정렬하여 표시하세요.
다음 열을 반환하세요:
bookpagewordsmax_words_in_bookavg_words_per_pagediff_from_avg
치트 시트
집계와 함께 사용하는 윈도우 함수는 현재 행과 관련된 행 집합에 걸쳐 값을 계산합니다. 실행 계산을 위해 OVER 절을 ORDER BY와 함께 사용하세요:
SELECT column,
MAX(column) OVER (ORDER BY column ASC) as running_max,
AVG(column) OVER (ORDER BY column ASC) as running_avg
FROM tablePARTITION BY를 사용하여 카테고리별로 계산을 그룹화하세요:
SELECT column, category,
MAX(column) OVER (PARTITION BY category ORDER BY column ASC) as max_per_category
FROM table이것은 각 카테고리에 대해 별도로 최대값을 계산하며, 독립적인 실행 계산을 유지합니다.
직접 해보기
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columns9Multiple tables
Basic Join Part 1Basic Join Part 2Recap - JoinSelf joinRecap - Self JoinUnionSimplify queries, WITH keywordRecap - With QueriesRecap - Real Estate Contractor12Window Functions part 2
RANK & DENSE_RANK FunctionsRecap - RANK & DENSE_RANKNTILE FunctionAggregation FunctionsROWS & RANGE Criterion