문제
PRODUCT 테이블에서 단가(PRICE)가 1000 미만인 상품을 모두 삭제하려고 한다. 가장 적절한 SQL은?
① DELETE PRODUCT WHERE PRICE < 1000;
② DELETE COLUMN PRICE FROM PRODUCT WHERE PRICE < 1000;
③ DELETE FROM PRODUCT WHERE PRICE < 1000;
④ TRUNCATE PRODUCT WHERE PRICE < 1000;
정답
3번
해설
표준 DELETE 구문은 DELETE FROM 테이블 WHERE 조건;이다. ③이 올바른 형식이다. ① FROM이 빠져 표준 구문에 맞지 않고, ② DELETE는 행을 삭제하는 명령으로 'COLUMN'을 지우는 구문은 존재하지 않으며(컬럼 삭제는 ALTER TABLE ... DROP COLUMN), ④ TRUNCATE는 WHERE를 쓸 수 없다. 따라서 정답은 ③.