모든 주문의 주문 ID와 주문된 상품의 이름을 나열하는 쿼리를 작성해주세요!
SELECT o.id "주문ID"
, p.name "상품명"
FROM products p inner join orders o on p.id = o.product_id
총 매출(price * quantity의 합)이 가장 높은 상품의 ID와 해당 상품의 총 매출을 가져오는 쿼리를 작성해주세요!
SELECT 상품ID
, 총매출
FROM
(
SELECT o.product_id "상품ID"
, o.quantity * p.price "총매출"
, MAX(o.quantity * p.price) " 최고매출"
FROM products p inner join orders o on p.id = o.product_id
GROUP BY 1
) SubQ1
WHERE 총매출 = 최고매출
각 상품 ID별로 판매된 총 수량(quantity)을 계산하는 쿼리를 작성해주세요!
SELECT product_id "상품ID"
, SUM(quantity) "총수량"
FROM orders
GROUP BY 1
2023년 3월 3일 이후에 주문된 모든 상품의 이름을 나열하는 쿼리를 작성해주세요!
SELECT 상품명
FROM
(
SELECT p.name "상품명"
, IF(date_format(date(o.order_date), '%Y$m$d') >= 20230303, 1, 0) "조건"
FROM products p inner join orders o on p.id = o.product_id
) SubQ1
WHERE 조건 = 1
가장 많이 판매된 상품의 이름을 찾는 쿼리를 작성해주세요!
SELECT 상품명
FROM
(
SELECT p.name "상품명"
, SUM(o.quantity) "판매량"
FROM products p inner join orders o on p.id = o.product_id
GROUP BY 1
) SubQ1
WHERE 판매량 = MAX(판매량)
각 상품 ID별로 평균 주문 수량을 계산하는 쿼리를 작성해주세요!
SELECT product_id "상품ID"
, AVG(quantity) "평균주문량"
FROM orders
GROUP BY 1
판매되지 않은 상품의 ID와 이름을 찾는 쿼리를 작성해주세요!
SELECT 상품ID
, 상품명
FROM
(
SELECT o.product_id "상품ID"
, p.name "상품명"
, SUM(o.quantity) "판매량"
, if(SUM(o.quantity) = 0, 1, 0) "조건"
FROM products p inner join orders o on p.id = o.product_id
GROUP BY 1
) SubQ1
WHERE 조건 = 1
'SQL 공부' 카테고리의 다른 글
사전캠프 달리기반 퀘스트 03-04 (2) | 2024.10.20 |
---|---|
사전캠프 달리기반 퀘스트 01-02 (0) | 2024.10.19 |
사전캠프 걷기반 퀘스트 10 (0) | 2024.10.12 |
사전캠프 걷기반 퀘스트 09 (1) | 2024.10.11 |
사전캠프 걷기반 퀘스트 08 (1) | 2024.10.11 |