본문 바로가기

SQL 코딩 입문

완강, 또 다른 시작

1. 5주차

Subquery 시작하면서 강의 듣는 속도는 더 느려져서, 10분 강의에 최소 4시간은 필요하다.

개념 설명 듣고, 예제 쿼리 또한 스스로 짜 보려고 하다 보니 시간이 많이 소요된다.

하지만 시행착오를 겪으면서, 테이블에 대한 이해도도 올라가고 쿼리 실행 순서도 머릿속에 정리가 되는 듯하다.

 

2-1. 참조

내가 짠 쿼리문
정답

테이블 별칭을 select 문에 포함하느냐, 마느냐에 따라 결과가 다르게 나왔다.

내가 짠 쿼리문은 course_avg 모두 2.0896 숫자가 동일했고, 정답 쿼리에서는 course_id 별로 2.5 / 1.6129 등으로 잘 나왔다.

 

궁금해서 질문하려던 찰나, 다른 분이 슬랙에 질문을 올려 주셨다.

매주 화목 즉문즉답 시간에 답변이 달릴 것으로 예상되니까, 그때 확인하고 추가로 궁금한 건 물어보자.

 

2-2. from inner join TO with tables

from 절에 두 개의 테이블을 inner join 하거나, with tabels 절로 분리해서 상단에 붙여주는 방법이 있다.

나중에 읽거나 이해하기에는 with 절로 빼둔 게 편할 것 같은데, 아직은 바로 떠오르지 않는다.

지금은 결과를 도출하기 위해 무슨 문법이 어떻게 필요한지 생각하는데도 벅차다.

 

하지만, 항상 간결하게 작성하자는 마음가짐으로 쿼리를 작성하고, 다듬어 가자.

 

2-3. case when

select 절에 case when 사용할 때에는 반드시 (괄호)로 묶어준다.

특정 숫자보다 크다는 조건을 Subquery로 추가할 때도 반드시 (괄호)로 묶어준다.

기록용. 잘하고 있어요.

 

2-4. substring_index

문자열 가지고 노는 법, substring_index 기록용.

특정 문자열 기준으로 +숫자 = 앞쪽, -숫자 = 뒤쪽 불러올 수 있다.

참고로 from 절에 Subquery 형태로도 작성할 수 있다는 것도 잊지 말자.

 

2-5. where 조건 Subquery ( inner join () )

inner join 안에 있는 조건부터 작성하고, 포인트 평균을 낼 수 있도록 select 작성한 다음에, 조건으로 추가하자.

처음부터 바로 쿼리를 작성할 수는 없다(또는 힘들다).

빌드업한다는 생각으로, 오류 나지 않게 차근차근 실행하자.

 

3. 마무리

14개의 스크립트

수강 완료일까지 5일 남겨두고, 모든 강의 수강 완료, 마지막 퀴즈까지 구글링으로 해결 완료, 개발 일지까지 작성 완료다.

다음 주에는 별도로 개인적인(?) 6주차를 만들어서, 전체 강의 복습하고 SQL 쿼리 문법 정리하자.

실무 DBeaver 세팅도 잊지 말자.

'SQL 코딩 입문' 카테고리의 다른 글

SQL 중급: 다시 1일차  (3) 2024.10.26
SQL 중급: 1일차  (0) 2024.03.20
다른 쿼리, 같은 결과  (0) 2021.05.02
쉼표, 작지만 큰 차이  (0) 2021.05.01
연결, 과정의 재미  (0) 2021.04.24