SQLD 기출문제 예상문제 16번
다음 문제를 풀어보세요.
다음 중 아래 SQL 쿼리의 실행 성능을 가장 효율적으로 개선할 수 있는 방법을 고르시오.
-- 주문 테이블과 고객 테이블을 조인하여 주문 건수가 많은 상위 10명의 고객을 조회하는 쿼리
SELECT c.customer_id, c.customer_name, COUNT(o.order_id) AS order_count
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
GROUP BY c.customer_id, c.customer_name
ORDER BY order_count DESC
LIMIT 10;
[테이블 구조]
-- customers 테이블
CREATE TABLE customers (
customer_id INT PRIMARY KEY,
customer_name VARCHAR(255)
);
-- orders 테이블
CREATE TABLE orders (
order_id INT PRIMARY KEY,
customer_id INT,
order_date DATE,
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);