- db다운받기
- 설치
초기 명령어
use sakila; show tables; show table status; desc film;
영화가 총 몇편인가요? 배우숫자는 몇명인가요? 영화카테고리는 몇개인가? 등등 숫자를 체크하기
select count(*) 응용하기
select count(*) from film;
영화등급 종류 모두 적기
select distinct rating from film;
영화 테이블 film에서 영화 release 연도 종류 알아내기, 각 영화의 release연도는 release_year 컬럼에 있음. (distinct 활용)
select distinct release_year from film;
영화 렌탈 테이블에서 10개 데이터만 출력하기, rental 테이블은 dvd의 렌탈정보가 담겨있음
select * from rental limit 10;
렌탈 테이블에서 inventory_id가 367인 row 전체 출력하기
select * from rental where inventory_id = 367;
렌탈 테이블에서 inventory_id가 367, staff_id가 1인 row 전체 출력하기
select * from rental where inventory_id = 367 and staff_id = 1;
customer 테이블에서 cuntomer 수 알아내기
select count(*) from customer;
paymemt 테이블에서 렌탈비용 합계, 평균, 최대값, 최소값 구하기
select * from payment; select sum(amount), AVG(amount), max(amount), min(amount) from payment; select payment_id, (amount), AVG(amount), max(amount), min(amount) from payment GROUP BY payment_id;
영화(film table)에 매겨진 등급(rating) 종류를 모두 출력하시요 (group by 이용) distinct 와 group by의 차이점 알기
SELECT rating from film GROUP BY rating;
영화(film table)에 매겨진 등급 (rating) 종류에 따른 영화 갯수를 모두 출력하세요 (rating값과 각 rating 값에 따른 영화 갯수를 출력하세요)
select rating, count(*) from film GROUP BY rating;
영화(film table)에 영화가 PG또는 G등급의 영화 수를 각 등급별로 출력하세요 (rating값과 각 rating 값에 따른 영화 갯수를 출력하세요)
select rating, count(*) from film where rating = 'PG' or rating ='G' GROUP BY rating;
영화(film table)에서 영화가 PG 또는 G 등급인 영화 제목을 출력하세요
select title from film where rating ='PG' or rating='G' group by rating;
영화(film table)에서 release 연도가 2006 또는 2007 연도이고, 영화가 PG 또는 G 등급인 영화 제목과 등급을 출력하세요
select title from film where release_year =2006 or release_year = 2007; select title, rating from film where (release_year =2006 or release_year = 2007) and (rating ='G' or rating='PG');
film테이블에서 rating (등급)으로 그룹을 묶어서, 각 등급별 영화 갯수 출력하기 (각 등급별 갯수 출력하기)
select count(*) from film GROUP BY rating;
film테이블에서 rating (등급)으로 그룹을 묶어서, 각 등급별 영화 갯수 출력하기 (등급과 각 등급별 갯수 출력하기)
select rating, count(*) from film GROUP BY rating; select rating as '등급' , count(*) as '갯수' from film GROUP BY rating;
film테이블에서 rating (등급)으로 그룹을 묶어서, 각 등급별 영화 갯수와 각 등급별 평균 렌탈 비용 출력하기 (등급과 각 등급별 갯수, 각 등급별 평균 렌탈 비용 출력하기)
select rating as '등급' , count(*) as '갯수', avg(rental_rate) from film GROUP BY rating;
film테이블에서 rating (등급)으로 그룹을 묶어서, 각 등급별 영화 갯수와 각 등급별 평균 렌탈 비용 출력하기, 단 평균 렌탈비용이 높은 순으로 출력하기 (등급과 각 등급별 갯수, 각 등급별 평균 렌탈 비용 출력하기)
SELECT rating , COUNT(*) , AVG(rental_rate) FROM film GROUP BY rating ORDER BY avg(rental_rate) DESC;
film테이블에서 rating (등급)으로 그룹을 묶어서, 각 등급별 영화 갯수와 rating (등급), 각 그룹별 평균 rental_rate (렌
탈 비용) 출력하되, 영화 갯수와 평균 렌탈 비용은 각각 total_films, avg_rental_rate 으로 출력하고, avg_rental_rate
이 높은 순으로 출력하시오
SELECT rating , COUNT(*) as total_films , AVG(rental_rate) as avg_rental_rate FROM film GROUP BY rating ORDER BY AVG(rental_rate) DESC; SELECT rating , COUNT(*) as 'total_films' , AVG(rental_rate) as 'avg_rental_rate' FROM film GROUP BY rating ORDER BY avg_rental_rate DESC;
film테이블에서 rating (등급)으로 그룹을 묶어서, 각 등급별 영화 갯수와 rating (등급), 각 그룹별 평균 rental_rate (렌
탈 비용) 출력하되, 영화 갯수와 평균 렌탈 비용은 각각 total_films, avg_rental_rate 으로 출력하고, avg_rental_rate
이 높은 순으로 출력하시오 (SQL 구문을 보기 좋게 여러 줄에 걸쳐서 써보기)
SELECT
rating,
COUNT(*) AS 'total_films',
AVG(rental_rate) AS 'avg_rental_rate'
FROM
film
GROUP BY rating
ORDER BY avg_rental_rate DESC;
각 등급별 영화 길이가 130분 이상인 영화의 갯수와 등급을 출력해보세요