SQL

250513_내일배움캠프_SQL(2)

baektree 2025. 5. 13. 21:01

💡오늘의 한 줄

자 중요한건 뭐라고? SQL 구문 가장 기초구조!

select
from
where
group by
order by

</aside>


1. 오늘 학습 한 내용을 나만의 언어로 정리하기

  1. 지난 강의 복습
    • SQL : DB에서 데이터를 조회하기 위한 언어 ex 알파벳
    • Query: DB에서 데이터를 조회하기 위해 SQL를 사용한 질의/명령 ex 영어문장
    • SQL문 = Query
    • SQL 문 기본구조
      • Select 조회하다
      • from ~ 테이블에서
      • where 조건은
        • 조건을 지정하는 방법 <,>,=,<>,IN, BETWEEN, LIKE, ADN OR, NOT
  2. 연산/함수
    • 기본연산: +-*/
    • 함수: SUM(컬럼), AVG(컬럼), COUNT(컬럼), MAX(칼럼), MIN(칼럼)
      • 단, COUNT(1)은 데이터 전체 개수를 구하는 것
      • 또, COUNT(distinct 칼럼)은 칼럼의 중복되지 않는 구별된 데이터 수를 구하는 것
      select count(1) count_of_orders,  
      			count(distinct customer_id) count_of_customers
      from food_orders
      
      ---
      count(1)
      -> 전체 주문건수, A라는 고객이 여러번 주문한 것도 다 합산됨.
      
      count(distinct customer_id)
      -> 고객 수, A라는 고객이 여러번 주문하였더라고 1개만 카운팅됨. 
      
  3. goup by
    • 범주 별 값을 알고 싶을 때 씀
  4. order by
    • 마지막에 오름차순(ASC), 내림차순(DESC) 정렬할 때 사용
  5. 구조 마스터
    1. 요청문을 본다. ”음식점별 주문 금액 최댓값(내림차순) 조회하라”
    2. Query를 적기 전 흐름을 정리한다.
      • 어디 테이블
      • 어떤 칼럼
      • 어떤 조건(where, group by, order by)
    3. 구문으로 만든다.
      • 어디 테이블: from food_order
      • 어떤 칼럼: select restaurant_name, max(price)
      • 어떤 조건: group by restaurant_name / order by max(price) desc
    4. 합친다.
      • select restaurant_name, max(price) "주문 금액 최대값" from food_orders group by restaurant_name order by max(price) desc

 

 

SQL문의 가장 기초구조

  1. Select
  2. From
  3. where
  4. group by
  5. order by desc(내림차순) asc(오름차순)

2. 학습하며 겪었던 문제점 & 에러

  • SQL 구문 대소문자를 구별하는가?
    • 구별한다.
      • 문자열, 칼럼명은 대소문자를 구분하여 작성하여야 한다.
      Alice <> alice
      Korean <> korean
      

3. 내일 학습 할 것은 무엇인지

  • 3주차 학습을 한다. 3-3까지만

#내일배움캠프 #사전캠프 #TIL