상세 컨텐츠

본문 제목

SQL 기본 연산 및 핵심 구조 (WHERE, GROUP BY, ORDER BY)

SQL/SQL 기본 개념

by 민도리 2025. 10. 14. 18:14

본문

  • 숫자 연산기호를 SQL에서 사용 가능
# 전체 시간 합계 구하기 (/)
select food_preparation_time,
       delivery_time,
       food_preparation_time / delivery_time as total_time
from food_orders
    • SUM(): 선택된 열의 값들의 총합을 계산
    • AVERAGE() (또는 AVG()): 선택된 열의 값들의 평균을 계산
    • COUNT(): 조건을 만족하는 행의 개수를 계산
    • MIN(): 선택된 열의 값들 중 최소값을 계산
    • MAX(): 선택된 열의 값들 중 최대값을 계산
select sum(food_preparation_time) total_food_preparation_time
	   avg(food_preparation_time) avg_food_preparation_time
from food_orders

2. WHERE 절

  • 정의: 테이블에서 특정 조건에 맞는 데이터 만을 필터링하여 선택할 때 사용.
  • 원리: 데이터가 집계되거나 정렬되기 에 적용되어 불필요한 데이터를 미리 제외합니다.

3. GROUP BY 절

  • 정의: 특정 **범주(열)**의 값이 같은 행들을 그룹으로 묶어, 그룹별로 집계 함수(SUM, AVG 등)를 적용할 때 사용.
  • 원리: 데이터를 지정된 열의 고유값으로 분류하고, 각 그룹에 대해 연산을 수행하여 범주별 요약 결과를 도출합니다.

4. ORDER BY 절

  • 정의: 최종적으로 조회된 결과의 행들을 특정 열(또는 여러 열)을 기준으로 정렬할 때 사용.
  • 특징:
    • 기본값은 오름차순 (ASC, Ascending).
    • 내림차순 정렬은 DESC (Descending) 키워드를 사용합니다.

5. SQL 구조 마스터

  • SQL 쿼리의 일반적인 논리적 실행 순서와 작성 순서는 다음과 같습니다.
    1. SELECT (원하는 열 선택)
    2. FROM (테이블 지정)
    3. WHERE (행 필터링)
    4. GROUP BY (그룹화)
    5. ORDER BY (결과 정렬)

코드 예시 : 간단한 샘플 코드

SQL
 

 

-- 테이블: Sales
-- 열: Product (상품명), Region (지역), Amount (매출액)

-- 1. WHERE 절로 '서울' 지역 데이터만 선택 후, Amount의 합계와 평균 계산
SELECT
    SUM(Amount) AS Total_Sales,
    AVG(Amount) AS Average_Sales
FROM
    Sales
WHERE
    Region = '서울';

-- 2. GROUP BY로 상품(Product)별 매출액(Amount)의 총합과 개수(COUNT) 계산
SELECT
    Product,
    SUM(Amount) AS Total_Amount,
    COUNT(*) AS Total_Transactions
FROM
    Sales
GROUP BY
    Product;

-- 3. GROUP BY 결과를 Amount의 총합을 기준으로 내림차순 정렬
SELECT
    Product,
    SUM(Amount) AS Total_Amount
FROM
    Sales
GROUP BY
    Product
ORDER BY
    Total_Amount DESC;

활용 사례 : 실제 프로젝트나 연습 문제 적용

  • 1) [실습] 주문 금액이 30,000원 이상인 주문건의 갯수 구하기
    1. Query 를 적기 전에 흐름을 정리해보기
    2.구문으로 만들기
    3.전체 구조로 합치기
    2) [실습] 한국 음식의 주문 당 평균 음식가격 구하기
    1.Query 를 적기 전에 흐름을 정리해보기
    2.구문으로 만들기
    3.전체 구조로 합치기

추가 학습거리

1. 데이터베이스 구조를 정확히 파악하기
주어진 데이터베이스에서 어떤 테이블들이 있고, 각 테이블이 어떤 열을 포함하는지 이해
2. 조건의 정확성 확인 
주어진 요구 사항에 맞게 조건을 정확하게 설정
3. 데이터베이스에서 특정 정보 추출하기
실제로 데이터베이스에서 요구사항에 맞는 정보를 추출하는 데 사용되는 SQL 문법을 이해하고 활용

관련글 더보기

댓글 영역