[sql] DAY12 (solvesql)

ryz·2022년 10월 25일
0

solvesql

목록 보기
2/4
post-thumbnail

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

0개의 댓글