다음 두 쿼리의 결과와 주의사항을 올바르게 분석한 것은?

과목: MySQL

문제 번호: 3184

hard
다음 두 쿼리의 결과와 주의사항을 올바르게 분석한 것은?
-- 쿼리 A
INSERT INTO Customers (CustomerName, City, Country)
SELECT SupplierName, City, Country FROM Suppliers;

-- 쿼리 B
INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country)
SELECT SupplierName, ContactName, Address, City, PostalCode, Country FROM Suppliers;
A. 쿼리 A와 B는 동일한 결과를 만들어내며 차이가 없습니다
B. 쿼리 A는 일부 컬럼에 NULL이 들어가고, 쿼리 B는 모든 컬럼이 채워집니다
C. 쿼리 A는 실행 오류가 발생하고, 쿼리 B만 정상 실행됩니다
D. 쿼리 A는 더 빠르게 실행되지만 데이터 무결성 문제가 발생할 수 있습니다

정답: B



⦁ 쿼리 A의 특징:
⦁ CustomerName, City, Country만 지정하여 삽입
⦁ ContactName, Address, PostalCode는 NULL 값으로 채워집니다
⦁ 명시되지 않은 컬럼들은 기본값 또는 NULL 처리됩니다

⦁ 쿼리 B의 특징:
⦁ 모든 주요 컬럼을 명시적으로 지정
⦁ Suppliers에서 해당하는 모든 데이터를 완전히 복사합니다

⦁ 데이터 완전성: 쿼리 B가 더 완전한 데이터 이전을 제공합니다

⦁ 성능: 큰 차이 없지만 쿼리 B가 더 많은 컬럼을 처리하므로 약간 더 오래 걸릴 수 있습니다

⦁ 권장사항: 필요한 모든 데이터를 포함하는 쿼리 B 방식이 더 바람직합니다

💡 학습 팁

이 문제를 포함한 MySQL 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.