lv쉬움. GROUP BY : 레스토랑 웨이터의 팁 분석
음식점의 요일, 시간대 별 패턴을 분석해보고자 합니다. 구체적으로는 각 요일의 시간대별 평균 팁은 얼마인지, 평균 일행 수는 몇 명인지 확인하고자 합니다. 평균 팁과 평균 일행 수는 소수점 아래 셋째 자리에서 반올림 해 둘째 자리까지 출력하고, 결과 데이터가 요일, 시간대의 알파벳 순으로 정렬되도록 쿼리를 작성해주세요. 결과 데이터에는 아래 4개의 컬럼이 들어가야 합니다.
day - 요일
time - 시간대
avg_tip - 평균 팁
avg_size - 평균 일행 수
#distinct 까먹지 말자!!!
select distinct
day,
time,
round(avg(tip), 2) as avg_tip,
round(avg(size), 2) as avg_size
from
tips
group by
day,
time
order by
day,
time
lv쉬움. SELECT : 특정 컬럼만 조회하기
points 테이블에 있는 모든 데이터의 x, y 컬럼을 조회하는 쿼리를 작성해주세요.
select
x,
y
from
points
lv쉬움. SELECT : 몇 분이서 오셨어요?
쿼리 결과에는 모든 컬럼이 출력되어야 합니다. 테이블 당 일행의 수는 size 컬럼에 들어있습니다. 예를 들어, 5명이서 방문한 테이블의 경우 size 컬럼의 값이 5입니다.
select
*
from
tips
where
size % 2 = 1
lv쉬움. String/Date : 최근 올림픽이 개최된 도시
2000년 이후 올림픽이 개최된 도시의 이름을 앞에서부터 3글자만 추출하는 쿼리를 작성해주세요. 쿼리 결과에는 올림픽 개최년도와 개최 도시만 출력되도록 하되, 도시 이름은 대문자로 출력되어야합니다.
쿼리 결과에는 아래 두 개의 컬럼이 있어야하고, 결과는 최근에 개최된 도시부터 내림차순으로 정렬되어있어야 합니다.
year - 올림픽 개최년도
city - 올림픽 개최도시 (3글자)
select
year,
upper(substr(city, 1, 3)) as city
from
games
where
year >= 2000
order by
year desc
lv쉬움. GROUP BY : 우리 플랫폼에 정착한 판매자 1
우리 플랫폼에서 상품을 많이 판매하고 있는 판매자가 누구인지 알고 싶습니다. 총 주문이 100건 이상 들어온 판매자 리스트를 출력하는 쿼리를 작성해주세요.
쿼리 결과에는 아래 컬럼이 있어야 합니다.
seller_id - 판매자 ID
orders - 판매자가 판매한 주문 건수
#이것도 distinct...
select
seller_id,
count(distinct order_id) as orders
from
olist_order_items_dataset
group by
seller_id
having
orders > 100