2022. 7. 13. 04:10ㆍSQL 종합반
Subquery = 하나의 SQL 쿼리 안에 또다른 SQL 쿼리가 있는 것을 의미
* Where 에 들어가는 Subquery
* Select 에 들어가는 Subquery
* From 에 들어가는 Subquery (가장 많이 사용되는 유형!)
* with절 : 깔끔하게 쿼리 정리
select c.title,
a.cnt_checkins,
b.cnt_total,
(a.cnt_checkins/b.cnt_total) as ratio
from
(
select course_id, count(distinct(user_id)) as cnt_checkins from checkins
group by course_id
) a
inner join
(
select course_id, count(*) as cnt_total from orders
group by course_id
) b on a.course_id = b.course_id
inner join courses c on a.course_id = c.course_id
with를 사용해서 아래 쿼리처럼 정리 가능하다.
with table1 as (
select course_id, count(distinct(user_id)) as cnt_checkins from checkins
group by course_id
), table2 as (
select course_id, count(*) as cnt_total from orders
group by course_id
)
select c.title,
a.cnt_checkins,
b.cnt_total,
(a.cnt_checkins/b.cnt_total) as ratio
from table1 a inner join table2 b on a.course_id = b.course_id
inner join courses c on a.course_id = c.course_id
[평가]
*Keep:
-
*Problem:
1. where절 과 group by 구분.. group by는 무조건 ~별로!
2. select절 안에 subquery 문제엔 where을 활용해야한다.
*Try:
1. select절 안에 subquery 문제 복습하기
'SQL 종합반' 카테고리의 다른 글
[내일배움단] 엑셀보다 쉬운 SQL - SQL 문법 정리 (0) | 2022.07.13 |
---|---|
[내일배움단] 엑셀보다 쉬운 SQL - 3주차 개발일지(Weekly I learned) (0) | 2022.07.12 |
[내일배움단] 엑셀보다 쉬운 SQL - 2주차 개발일지(Weekly I learned) (0) | 2022.07.12 |
[내일배움단] 엑셀보다 쉬운 SQL - 1주차 개발일지(Weekly I learned) (0) | 2022.07.08 |