마지막 연습 문제 !

수이·2025년 2월 11일
0

🟢 데일리퀘스트

목록 보기
15/19
post-thumbnail

다음과 같은 상품(products) 테이블과 주문(orders) 테이블이 있습니다.

  • products 테이블
idnameprice
1랩톱1200
2핸드폰800
3타블렛400
  • orders 테이블
idproduct_idquantityorder_date
101122023-03-01
102212023-03-02
103352023-03-04
  1. 모든 주문의 주문 ID와 주문된 상품의 이름을 나열하는 쿼리를 작성해주세요!
SELECT o.id,
	   p.name
FROM orders o INNER JOIN products p ON o.product_id = p.id
  1. 총 매출(price * quantity의 합)이 가장 높은 상품의 ID와 해당 상품의 총 매출을 가져오는 쿼리를 작성해주세요!
SELECT p.id,
	   SUM(p.price * o.quantity) AS total_sales
FROM products p INNER JOIN orders o ON p.id = o.product_id
GROUP BY 1
ORDER BY total_sales DESC
LIMIT 1
  1. 각 상품 ID별로 판매된 총 수량(quantity)을 계산하는 쿼리를 작성해주세요!
SELECT p.id,
	   SUM(o.quantity) AS total_quantity
FROM products p INNER JOIN orders o ON p.id = o.product_id
GROUP BY 1
  1. 2023년 3월 3일 이후에 주문된 모든 상품의 이름을 나열하는 쿼리를 작성해주세요!
SELECT DISTINCT p.name
FROM products p INNER JOIN orders o ON p.id = o.product_id
WHERE order_date > '2023-03-03'
  1. 가장 많이 판매된 상품의 이름을 찾는 쿼리를 작성해주세요!
SELECT p.name,
	   SUM(o.quantity) AS total_quantity
FROM products p INNER JOIN orders o ON p.id = o.product_id
GROUP BY 1
ORDER BY total_quantity DESC
LIMIT 1
  1. 각 상품 ID별로 평균 주문 수량을 계산하는 쿼리를 작성해주세요!
SELECT p.id,
	   AVG(o.quantity) AS avg_quantity
FROM products p INNER JOIN orders o ON p.id = o.product_id
GROUP BY 1
  1. 판매되지 않은 상품의 ID와 이름을 찾는 쿼리를 작성해주세요!
SELECT p.id,
	   p.name
FROM products p LEFT JOIN orders o ON p.id = o.product_id
WHERE o.id IS NULL

0개의 댓글

관련 채용 정보