기출문제/정보처리기사

2021년 3회 정보처리기사 기출문제 48번

엉클지니 2025. 3. 14. 14:44

48. 학적 테이블에서 전화번호가 Null값이 아닌 학생명을 모두 검색할 때, SQL 구문으로 옳은 것은?

SELECT FROM 07 WHERE 전화번호 DON'T NULL;

SELECT FROM WHERE 전화번호 != NOT NULL;

 SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL;

SELECT FROM WHERE 전화번호 IS NULL;

 

 


해설:

SQL에서 NULL 값에 대한 처리는 특별한 규칙이 있습니다. NULL값이 없음을 의미하며, 일반적인 비교 연산자(=, !=, >, < 등)로 비교할 수 없습니다. 대신, IS NULL 또는 IS NOT NULL 구문을 사용하여 NULL 값을 비교합니다.

각 선택지 분석

① SELECT FROM 07 WHERE 전화번호 DON'T NULL; ❌ (오답)

  • SQL 문법에 맞지 않으며, DON'T NULL은 올바른 구문이 아닙니다.
  • 전화번호 IS NOT NULL을 사용해야 합니다.

② SELECT FROM WHERE 전화번호 != NOT NULL; ❌ (오답)

  • 전화번호 != NOT NULL은 잘못된 구문입니다. != 연산자는 NULL을 비교하는 데 사용할 수 없으며, 대신 IS NOT NULL을 사용해야 합니다.
  • 전화번호 IS NOT NULL이 맞습니다.

③ SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL; ✅ (정답)

  • 이 SQL 구문은 학적 테이블에서 전화번호가 NULL이 아닌 학생명을 정확히 검색하는 올바른 구문입니다.
  • IS NOT NULL을 사용하여 전화번호가 NULL이 아닌 경우에 해당하는 학생명만 선택합니다.

④ SELECT FROM WHERE 전화번호 IS NULL; ❌ (오답)

  • 이 SQL 구문은 전화번호가 NULL인 학생명을 검색하는 것입니다.
  • 문제에서 요구한 "전화번호가 NULL이 아닌 학생명"을 찾기 위한 쿼리가 아니므로 오답입니다.

결론

전화번호가 NULL이 아닌 학생명을 검색하는 SQL 구문③번이 맞습니다.


정답: ③ SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL

선택지 설명 정답 여부

① SELECT FROM 07 WHERE 전화번호 DON'T NULL; 잘못된 구문입니다. ❌ (오답)
② SELECT FROM WHERE 전화번호 != NOT NULL; 잘못된 구문입니다. ❌ (오답)
③ SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL; 올바른 SQL 구문입니다. ✅ (정답)
④ SELECT FROM WHERE 전화번호 IS NULL; 전화번호가 NULL인 학생명을 찾는 쿼리입니다. ❌ (오답)

정확한 SQL 구문을 사용할 때 NULL 값에 대해서는 IS NULL 또는 IS NOT NULL을 사용하는 것이 중요합니다!  😊