SQL - 문제 미리보기

문제 1715

hard
다음 쿼리에서 빈칸에 들어갈 올바른 구문은? ```sql SELECT ProductName, COALESCE(______) AS ContactInfo FROM Products p JOIN Suppliers s ON p.SupplierID = s.SupplierID; ``` 목적: 공급업체의 연락처 정보를 우선순위에 따라 표시 (이메일 → 전화번호 → 팩스 → '연락처 없음')
A. `s.Email, s.Phone, s.Fax, 'No Contact'`
B. `'No Contact', s.Fax, s.Phone, s.Email`
C. `s.Email AND s.Phone AND s.Fax`
D. `s.Email OR s.Phone OR s.Fax OR 'No Contact'`

정답: A

COALESCE 함수의 고급 활용법과 다중 값 처리 원리: COALESCE의 다중 값 처리: • 순차적 평가: 왼쪽부터 오른쪽으로 값들을 순서대로 검사 • 첫 번째 NULL이 아닌 값: 최초로 발견되는 NULL이 아닌 값을 반환 • 우선순위 구현: 매개변수 순서가 곧 우선순위 다른 선택지가 틀린 이유: 2번: 순서가 반대 • 우선순위가 뒤바뀜 ('No Contact'가 최우선이 됨) • 실제로는 항상 'No Contact'만 반환 3번: AND 연산자 • 논리 연산자는 COALESCE와 함께 사용 불가 • 문법 오류 발생 4번: OR 연산자 • 논리 연산자는 COALESCE와 함께 사용 불가 • 불린 값(TRUE/FALSE) 반환, 실제 연락처 정보 아님

💡 학습 팁

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