SQLD 기출문제 예상문제 378번
다음 문제를 풀어보세요.
다음 중 아래 SQL문의 실행 결과에 대한 설명으로 가장 적절한 것을 고르시오.
[테이블 구조]
CREATE TABLE PRODUCTS (
product_id VARCHAR(10) PRIMARY KEY,
product_name VARCHAR(100),
price DECIMAL(10, 2)
);
CREATE TABLE ORDERS (
order_id VARCHAR(10) PRIMARY KEY,
product_id VARCHAR(10),
quantity INT,
order_date DATE,
FOREIGN KEY (product_id) REFERENCES PRODUCTS (product_id)
);
[데이터 예시]
PRODUCTS 테이블
product_id
product_name
price
P001
노트북
1200.00
P002
마우스
25.00
P003
키보드
75.00
P004
모니터
300.00
ORDERS 테이블
order_id
product_id
quantity
order_date
O001
P001
2
2023-01-05
O002
P002
10
2023-01-05
O003
P001
1
2023-01-06
O004
P003
5
2023-01-06
O005
P002
8
2023-01-07
O006
P004
3
2023-01-07
O007
P001
3
2023-01-08
O008
P003
7
2023-01-08
O009
P005
15
2023-01-09
[SQL 쿼리]
SELECT
P.product_name,
SUM(O.quantity) AS total_quantity_sold,
COUNT(O.order_id) AS total_orders,
AVG(O.quantity) AS average_quantity_per_order
FROM
ORDERS O
JOIN
PRODUCTS P ON O.product_id = P.product_id
WHERE
O.order_date BETWEEN '2023-01-01' AND '2023-01-31'
GROUP BY
P.product_name
HAVING
SUM(O.quantity) > 10 AND AVG(O.quantity) > 3;