3일차에 본캠프에 합류하게 되어 3일의 짧았던 1주차가 끝이났다.
이번 주에는 SQL 강의를 들으며 공부하는 시간을 가졌다.
SQL로 직접 실습을 진행하면서 내 생각에는 맞게 코딩한 것 같은데 자꾸 오류가 발생하는 경우가 있었다.
강의 내용에는 없었지만, 튜터님께 따로 질문을 드려 오류가 발생했던 이유를 알 수 있었다.
오류가 발생했던 이유는 SQL문의 논리순서 때문이었다.
SQL Query의 작성순서는
select > from > where > group by > having > order by 이다.
하지만, 논리순서는
from > where > group by > having > select > order by였다.
>select 부분에서 정의한 별칭을 where에서 사용하려고 해서 오류가 났었다.
논리적인 순서를 생각하면서 쿼리를 작성하니 조금 더 오류를 줄일 수 있었다.
+ limit 함수를 알게되었다.
실습 문제 중 등록기간이 가장 오래된 NAME 하나를 가져오는 문제가 있었다.
나는 Window fucntion중 하나인 rank() 함수를 이용해 풀어보려고 했는데,
order by 등록기간
limit 1 << 이런식으로도 풀 수 있었다.
+ group by의 이용
통계함수를 사용할 땐 group by로 조건을 주어야한다는 것을 알게되었다.
다음주에는 문제를 많이 풀어보며 디테일한 부분을 더 많이 알아가면 좋을 것 같다.