지난 시간에는 SQL의 가장 기본적인 구조인
아래의 절들을 사용해 분류하고 정렬하여 쉽게 조회하는 방법을 배웠다.
select
from
where
group by
order by
- 주문 테이블에서 → from
- 주문 수량이 1건인 주문건의 → where (어떠한 조건)
- 음식 가격의 평균을 음식 종류별(묶어)로 조회하여 → select, group by, avg
- 음식 가격이 높은 순서대로 정렬하기 → order by
★그리고 모든 함수에는 '()' ←괄호를 써서 사용한다.
예시▶ sum(컬럼)
업무 필요한 문자 포맷이 다를 때, SQL로 가공하기
- 특정 문자를 다른 문자로 바꾸기
replace(바꿀 컬럼, 현재 값, 바꿀 값)
- 원하는 문자만 남기기(뽑아오기)
substr(조회 할 컬럼, 시작 위치, 글자 수)
- 여러 컬럼의 문자를 합치기
concat(붙이고 싶은 값1, 붙이고 싶은 값2, 붙이고 싶은 값3, .....)
문자 데이터를 바꾸고, GROUP BY 사용하기
서울 지역의 음식 타입별 평균 주문금액 구하기
- from에 먼저 food_orders를 가져오기
- 지역(addr)를 '서울'만 조회되게 하고, 서울특별시의 첫글자 두번째(마지막)글자를 선택
- 음식 타입(cuisine_type)도 선택
- 평균(avg) 금액(price) 선택
- 서울지역 '의'(조건=where) addr 중, %서울%(like가 찾는 단어의 처음과 끝에 % 붙임)
- 각 그룹별 통계를 지정하려면 group by를 Select의 몇번째 컬럼을 묶어 줄지 지정해줘야 한다.
이메일 도메인별 고객 수와 평균 연령 구하기

‘[지역]음식점이름 (음식종류)’ 컬럼을 만들고, 총 주문건수 구하기
오늘은 group by를 이해하려고 해석하기에만 시간을 다 쓴 것 같다..ㅠㅠ
갑자기 숫자 1 과 2가 나오길래 중간에 많이 난해했는데
전에 썼던 TIL을 보면서 필기도 다시 수정하고 한 단계 더 이해하게 되었다.
'📖TIL(Today I Learned)' 카테고리의 다른 글
TIL 6일 차 [Pivot Table 과 Window Function - RANK] (1) | 2024.11.15 |
---|---|
TIL 5일 차 [Subquery와 Join을 이용하여 복잡한 연산을 한 번에 결합] (6) | 2024.11.13 |
TIL 4일 차 [IF 와 CASE 문 사용하기] (1) | 2024.11.08 |
TIL 2일 차 [SQL의 숫자 계산 및 순서 조회] (2) | 2024.11.04 |
TIL 1일 차 [SQL의 기초 + 필기 정리] (0) | 2024.11.01 |