오늘은 드디어 기다리던 노트북이 도착했다.
스파르타 내일배움캠프에서 제공하는 노트북 대여 시스템 덕분에 어제 신청하고 오늘 바로 택배로 받았다.
사실 맥북은 처음 써보지만, 그동안 노트북이 없어서 매번 폰으로 ZEP에 접속하던 나에겐 정말 반가운 시스템이었다. 이젠 조금 더 쾌적하게 캠프를 따라갈 수 있을 것 같다!
📚 1. 오늘 학습한 내용
오늘은 주로 SQL에서 문자 가공 및 조건 처리 관련 기능들을 배웠다.
🔧 문자열 가공 함수
REPLACE(컬럼, 기존값, 바꿀값)
SUBSTRING(컬럼, 시작위치, 길이)
CONCAT(값1, 값2, 값3, ...)
🔍 조건에 따른 포맷 변경
IF(조건, 참일 때, 거짓일 때)
CASE WHEN 조건 THEN 값 ... ELSE 기본값 END
💡 MySQL이 아닌 다른 DBMS에서는 데이터 타입이 다르면 연산이 안 될 수도 있다.
이럴 땐 명시적으로 형 변환을 해주자!
-- 문자열을 숫자로 변환
CAST(IF(rating = 'Not given', '1', rating) AS DECIMAL)
-- 숫자를 문자열로 변환
CONCAT(restaurant_name, '-', CAST(order_id AS CHAR))
✔️ 한 번의 연산으로 끝나지 않는 경우에는 서브쿼리(subquery) 를 활용하면 쿼리를 더 효율적이고 직관적으로 만들 수 있다.
예시 상황:
수수료 적용 시간 → 주문 금액별 가중치 → 최종 배달비 계산
음식 타입별 평균 주문 금액으로 상/중/하 분류
특정 조건(예: 30대 이상) 기준으로 결과 필터링
🧩 2. 학습 중 겪은 문제점 & 에러
어제까지만 해도 “오늘이면 5주차까지는 달릴 수 있겠다”는 자신감이 있었는데…
실제로 강의를 듣고 예제 실습 문제를 풀어보니 시간 배분이 너무 어려웠다.
특히 조건문에서 어떤 조건을 먼저 써야 할지, IF냐 CASE냐 고민하면서 시간을 많이 썼다.
강의에서는 이해가 되지만, 스스로 문제를 풀 땐 막히는 순간이 많았다.
🎯 3. 내일의 목표
4주차 마무리
5주차 중간까지 학습 진행
지금처럼 학습 내용을 꼼꼼히 기록하면서 실습과 복습을 반복하면 더 자신감이 붙을 것 같다!