본문 바로가기

SQL Kit/GROUP BY

월별 잡은 물고기 수 구하기 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제목적GROUP BY와 EXTRACT 함수를 활용하여 날짜 데이터를 특정 단위(월)로 그룹화하고, 각 월별 데이터를 집계하는 방법을 학습하기 위한 것입니다.2. 핵심개념EXTRACT 함수정의: 날짜/시간 데이터를 특정 요소(연도, 월, 일 등)로 추출하는 함수.EXTRACT(단위 FROM 날짜컬럼)예시: EXTRACT(MONTH FROM '2025-01-22') → 결과: 1GROUP BY정의: 데이터를 특정 컬럼 기준으로 그룹화하여 집계 작업을 수행할 수 있다.SELECT 컬럼, 집계함수(컬럼)FROM 테이블GROUP BY 컬럼;COUNT 함수정의: 특정 컬럼에서 행의 개수를 세는 집계 함수.SELECT COUNT(컬럼)FROM 테이블;NULL 값은 기본적으로 제외한다.WHERE 조건정의: 특정.. 더보기
물고기 종류 별 잡은 수 구하기 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제목적GROUP BY와 COUNT 함수를 활용하여 데이터를 그룹화하고 특정 컬럼 값을 기준으로 집계된 데이터를 정렬하여 추출하는 SQL 문법을 학습하기 위한 것입니다.2. 핵심개념GROUP BY정의: 데이터를 지정한 컬럼 기준으로 그룹화하여 집계 작업을 수행할 수 있게 한다.SELECT 컬럼1, 집계함수(컬럼2)FROM 테이블GROUP BY 컬럼1;COUNT 함수정의: 특정 컬럼에서 행의 개수를 세는 집계 함수.SELECT COUNT(컬럼)FROM 테이블;특징: NULL 값을 제외하고 행의 개수를 셀 수 있다.JOIN정의: 두 개 이상의 테이블을 연결하여 데이터를 조합하는 방법.SELECT *FROM 테이블1JOIN 테이블2ON 테이블1.공통컬럼 = 테이블2.공통컬럼;ORDER BY정의: 결과를 .. 더보기
노선별 평균 역 사이 거리 조회하기 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제 목적이 문제의 목적은 SQL에서 GROUP BY, SUM, AVG, ROUND, CONCAT, ORDER BY 등의 함수를 활용하여 데이터를 그룹화하고, 계산 및 포맷화하는 방법을 학습하는 것이다.지하철 노선별로 역 사이 거리의 총합과 평균을 계산하며, 결과를 보기 좋게 포맷화하고 정렬하여 출력하는 과정을 통해 집계 데이터 분석 및 결과의 가독성 향상 기술을 익힌다.이는 실무에서 대규모 데이터를 요약하고 통계 정보를 생성하는 데 유용한 기술이다.2. 핵심 개념GROUP BY정의: 데이터를 특정 열 값을 기준으로 그룹화하여 각 그룹별로 요약 결과를 반환.SELECT 열1, SUM(열2)FROM 테이블명GROUP BY 열1;2.2 SUM 함수정의: 특정 열의 값을 모두 더하여 합계를 반환하는 집계.. 더보기
조건에 맞는 사원 정보 조회하기 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제 목적JOIN, GROUP BY, 집계 함수(SUM), ORDER BY, LIMIT를 활용하여 데이터를 결합하고 특정 조건에 맞는 데이터를 효율적으로 조회하는 방법을 학습하는 것이다.2. 핵심 개념JOIN정의: 두 개 이상의 테이블을 결합하여 연관된 데이터를 조회.종류:LEFT JOIN: 왼쪽 테이블의 모든 데이터와 오른쪽 테이블의 공통된 데이터 반환.INNER JOIN: 두 테이블의 공통된 데이터만 반환.SELECT *FROM 테이블1INNER JOIN 테이블2ON 테이블1.공통열 = 테이블2.공통열;GROUP BY정의: 데이터를 특정 열 값으로 그룹화하여 집계 함수와 함께 사용.SELECT 열1, SUM(열2)FROM 테이블명GROUP BY 열1;SUM 함수정의: 주어진 열의 값을 모두 더하.. 더보기
가격대 별 상품 개수 구하기 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제 목적FLOOR 함수와 GROUP BY를 활용하여 데이터 범위를 동적으로 계산하고 그룹화하는 방법을 학습하는 것이다.숫자 데이터(PRICE)를 특정 단위(만 단위)로 그룹화하고 각 그룹별로 레코드의 개수를 계산하며 이를 정렬하여 결과를 출력하는 과정에서 숫자 기반 데이터 처리 및 집계 기술을 익히는 것을 목표로 한다.2. 핵심 개념FLOOR 함수정의: 숫자 값을 내림하여 가장 가까운 정수로 반환하는 함수.FLOOR(숫자 값)특징:숫자 데이터를 특정 단위로 그룹화하거나 범위를 설정할 때 유용하다.소수점을 제거하고 정수 값으로 내림 처리한다.FLOOR(19999 / 10000) * 10000 -- 결과: 10000COUNT 함수정의: 특정 열 또는 레코드의 개수를 계산하는 집계 함수.SELECT .. 더보기
입양 시각 구하기(1) [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제 목적GROUP BY, COUNT, EXTRACT 함수를 활용하여 특정 시간 범위 내에서 각 시간별 데이터 개수를 계산하고 이를 정렬하는 과정을 통해 데이터의 시간 기반 분석을 수행하는 기술을 익힌다.2. 핵심 개념EXTRACT 함수정의: 날짜와 시간 데이터에서 특정 부분(예: 연도, 월, 일, 시간 등)을 추출하는 함수.EXTRACT(단위 FROM 날짜열)단위: YEAR, MONTH, DAY, HOUR, MINUTE, SECOND 등.예: EXTRACT(HOUR FROM '2022-01-01 10:30:00') → 10.COUNT 함수정의: 특정 열 또는 레코드의 개수를 계산하는 집계 함수.SELECT COUNT(*)FROM 테이블명;COUNT(*): 모든 레코드를 계산.COUNT(열 이름):.. 더보기
고양이와 개는 몇 마리 있을까 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제 목적GROUP BY와 COUNT를 활용하여 특정 조건에 따라 데이터를 그룹화하고 집계하는 방법을 학습하는 것이다.2. 핵심 개념GROUP BY정의: 데이터를 특정 열 값을 기준으로 그룹화하여 각 그룹별로 요약 결과를 반환한다.SELECT 열1, COUNT(*)FROM 테이블명GROUP BY 열1;주요 특징:결과는 그룹화된 열과 집계된 결과만 반환한다.GROUP BY는 반드시 집계 함수(COUNT, SUM 등)와 함께 사용된다.COUNT 함수정의: 특정 열 또는 레코드의 개수를 계산하는 함수.SELECT COUNT(*)FROM 테이블명;주요 특징:COUNT(열 이름): NULL이 아닌 값만 카운트.COUNT(*): 모든 레코드를 계산.2.3 ORDER BY정의: 결과를 특정 열을 기준으로 정렬... 더보기
진료과별 총 예약 횟수 출력하기 [ 프로그래머스 | SQL Kit | Level 2 ] 1. 문제 목적집계 함수, GROUP BY, ORDER BY를 이용하여 데이터베이스에서 그룹별로 데이터를 요약하고 정렬하는 방법을 학습하는 것이다. 날짜 조건 필터링(YEAR, MONTH)을 통해 특정 기간에 해당하는 데이터를 조회하고 GROUP BY를 사용해 진료과별 예약 건수를 집계하며 정렬 조건을 추가하여 데이터를 출력하는 방식을 익힌다.2. 핵심 개념COUNT 함수정의: COUNT 함수는 주어진 데이터 셋에서 레코드의 개수를 계산하는 함수이다.SELECT COUNT(*)FROM 테이블명;COUNT(열 이름): 특정 열의 NULL이 아닌 값만 카운트.COUNT(*): 모든 행을 카운트.GROUP BY정의: 데이터를 특정 열을 기준으로 그룹화하여 각 그룹별로 요약 결과를 반환한다.SELECT 열1, .. 더보기