5.1) 집계 (5-20강 P.182) : COUNT, DISTINCT
테이블에 2000년 영화가 몇개나 되는지 , 영화 데이터에 몇개 나라가 있을까?
SELECT count(ID) from films where release_year >= 2000 select DISTINCT country from films
5.2) 합평균최소최대갑 (5-21강 P.190) : SUM, AVG, MIN, MAX
영화데이터의 평균/최소/최대 평점은?
select sum(facebook_likes),avg(facebook_likes),min(facebook_likes),max(facebook_likes) from reviews
5.3) 집계 (5-22강 P.194) : GROUP BY, HAVING
영화데이터에 언어별 영화수는, 나라별 영화수는
select language,count(id) from films group by language; select country,count(id) from films group by country;
집계함수에 조건 거는 방법 Having
select release_year,count(id) from films group by release_year; select release_year,count(id) from films group by release_year HAVING count(id) >3
5.4) 서브쿼리 (5-23강 P.204) :
페이스북 likes 최대 받은 영화는? -
5.4.1) facebook likes 최대 받은 영화의 film_id 찾기 : select film_id from reviews where facebook_likes = (select max(facebook_likes) from reviews
5.4.2) film_id로 영화찾기 : select * from films where id = ()
등급 보류중인 영화의 나라별 갯수는?
select
(SELECT count(*) from films) as films1,
(SELECT count(*) from reviews) as reviews1
5.5) 상관 서브쿼리 (5-24강 P.216) : EXISTS, NOT EXISTS, IN
SELECT country,count(*) from films
where EXISTS (select country from films where country is not null) group by country
SELECT country,count(*) from films
where not EXISTS (select country from films where country is null) group by country;
페이스북 라이크 평균이상인 영화는 ?
SELECT * from films
where id IN (
select film_id from reviews where facebook_likes > (
SELECT avg(facebook_likes) from reviews));
'데이터엔지니어 > SQL' 카테고리의 다른 글
근속년수 구하기-ms sql (0) | 2021.07.16 |
---|---|
SQL쿼리-07조인 (0) | 2020.02.17 |
SQL 쿼리04-데이터 조작 (0) | 2020.02.15 |
SQL 쿼리03-정렬 (0) | 2020.02.15 |
SQL 쿼리02-조회 (0) | 2020.02.15 |