Menu
Coddy logo textTech

Built-In Aggregate Part 2

Coddy SQL 여정의 기초 섹션에 포함된 레슨 — 72개 중 35번째.

때때로 각 행을 집계 값과 비교하는 것과 같이 집계 함수를 더 복잡한 방식으로 사용해야 할 때가 있습니다. 이럴 때 중첩 쿼리가 유용합니다.

개별 행과 집계 값을 결합하는 계산을 수행하려면 중첩 쿼리를 사용해야 합니다. 그 이유는 다음과 같습니다:
이것은 원하는 행별 결과를 제공하지 않습니다:

SELECT value + MIN(value)
FROM table1

그 이유는 집계 함수는 전체 열에 대해 작동하는 반면, 'value' 참조는 행 단위로 작동하려고 하기 때문입니다. 이를 해결하기 위해 중첩 쿼리를 사용합니다:

SELECT value + (SELECT MIN(value) FROM table1)
FROM table1

이것은 중첩된 쿼리인 (SELECT MIN(value) FROM table1)가 먼저 실행되어 단일 값을 반환하고, 이 값이 각 행에 대해 메인 쿼리에서 사용될 수 있기 때문에 작동합니다.

중첩 집계의 일반적인 사용 사례:
1. 각 값을 평균과 비교하기

2. 전체 대비 백분율 계산하기

3. 최댓값 또는 최솟값과의 차이 구하기

challenge icon

챌린지

쉬움

사용 가능한 테이블 및 컬럼:

  • <strong>items</strong>: <strong>id</strong>, <strong>price</strong>

각 항목의 가격이 모든 항목의 평균 가격을 얼마나 초과하는지 계산하세요. 항목 ID, 가격, 그리고 평균과의 차이를 표시하세요. 차이 컬럼의 이름을 diff_from_avg로 지정하세요.

결과를 차이 기준 내림차순으로 정렬하세요.

직접 해보기

quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨