TIL(SQL_Day_3)

JayJay Choi·2024년 4월 12일
0

TIL

목록 보기
3/61

밀린 TIL 올리기 Day3

조금 더 어려워지는 수업이다.. 하지만 새로운것을 배우는 것은 너무 즐겁다. 화이팅하자!

SQL- 3주차

엑셀에서 쓰는 것들을 조금 더 쉽게 사용하는 것 같은 기분이다.

배운것들

✅ 업무에 필요한 문자 포맷이 다를때 (Replace, Substring, Concat)

✅ 조건에 따라 포맷을 다르게 변경해야 한다면 (If, Case)

업무에 필요한 문자 포맷이 다를때

Replace

-특정 문자를 다른 것으로 바꿀 수 있는 기능
✔ 기본 문법 : raplace ( 바꿀 컬럼, 현재 값, 바꿀값)
-예시 : replace (restaurant_name, 'blue','pink')

기본구조

select addr "월래주소"
       replace(addr,'문곡리','문가리') "바뀐주소"
from food_orders
where addr like '%문곡리%'

Substring

-특정 문자만 골라서 조회하는 기능
✔기본 문법 : substr(조회 할 컬럼, 시작 위치, 글자수)
-예시 : substr(addr,1,2)

기본구조

Select addr "월래주소",
	   substr(addr,1,2) "시도"
from food_orders
where addr like '%서울특별시%'

Concat

-여러 컬럼의 값을 하나로 합칠 수 있는 기능
✔기본 문법 : cancat(붙이고 싶은 값1, 붙이고 싶은 값 2,...)
-예시 : concat ('[',substr(addr,1,2),']', restaurant_name)

기본구조

select restaurant_name "원래 이름",
       addr "원래 주소",
       concat('[',substring(addr,1,2),']', restaurant_name) "바뀐 이름"
from food_orders
where addr like '%서울%'

조건에 따라 포맷을 변경

If

-원하는 조건에 충족할 때 적용할 방법과 아닌 방법을 지정
✔기본 문법 : If(조건, 조건을 충족할때, 조건을 충족하지 못할때)
-예시 : If(cuisine_type='Korean','한식','기타')

기본구조

select restaurnat_name,
       cuisine_type "원래 음식 타입",
       if(cuisine_type='Korean', '한식', '기타') "음식 타입"
from food_orders

Case

-각 조건별로 적용할 값을 지정해 줄 수 있음.
✔기본 문법 : case when 조건1 then 값(수식)1
when 조건2 then 값(수식)2
else 값(수식)3
end
-예시 : case when quantity = 1 then price
when quantity = 2 then price/quantity
end

기본구조

select restaurant_name,
       addr,
       case when addr like '%경기도%' then '경기도'
            when addr like '%특별%' or addr like '%광역%' then substring(addr,1,5)
from food_orders

3주차 공부와 정리를 해보았다.
강의를 들으면 이해는 가는데 직접 문제를 풀려고 하면 많이 버벅 거리고 있다.
더 익숙해지기 위해서는 더 많은 노력이 필요하다는 것을 느낀다.

profile
차근차근 열심히 따라가보는 왕초보의 기록들!

0개의 댓글