SQLD 기출문제 예상문제 26

다음 문제를 풀어보세요.

다음 중 아래 SQL에 대한 설명으로 가장 적절한 것을 고르시오.

CREATE TABLE ORDERS (
    ORDER_ID INT PRIMARY KEY,
    CUSTOMER_ID INT,
    ORDER_DATE DATE,
    TOTAL_AMOUNT DECIMAL(10, 2)
);

CREATE TABLE CUSTOMERS (
    CUSTOMER_ID INT PRIMARY KEY,
    CUSTOMER_NAME VARCHAR(255),
    CITY VARCHAR(255)
);

INSERT INTO ORDERS (ORDER_ID, CUSTOMER_ID, ORDER_DATE, TOTAL_AMOUNT) VALUES
(1, 101, '2023-01-15', 150.00),
(2, 102, '2023-02-20', 200.00),
(3, 101, '2023-03-10', 100.00),
(4, 103, '2023-04-05', 250.00);

INSERT INTO CUSTOMERS (CUSTOMER_ID, CUSTOMER_NAME, CITY) VALUES
(101, 'Alice', 'New York'),
(102, 'Bob', 'Los Angeles'),
(103, 'Charlie', 'Chicago');

-- 실행 계획 1
UPDATE ORDERS
SET TOTAL_AMOUNT = TOTAL_AMOUNT * 1.1
WHERE CUSTOMER_ID IN (SELECT CUSTOMER_ID FROM CUSTOMERS WHERE CITY = 'New York');

-- 실행 계획 2
UPDATE ORDERS
SET TOTAL_AMOUNT = TOTAL_AMOUNT * 1.1
WHERE EXISTS (SELECT 1 FROM CUSTOMERS WHERE CUSTOMERS.CUSTOMER_ID = ORDERS.CUSTOMER_ID AND CITY = 'New York');