41. 결과 값이 아래와 같을 때 SQL 질의로 옳은 것은?
❶ SELECT * FROM 공급자 WHERE
공급자명 LIKE '%신%';
② SELECT * FROM 공급자 WHERE
공급자명 LIKE '%대%';
③ SELECT * FROM 공급자 WHERE
공급자명 LIKE '%사%';
④ SELECT * FROM 공급자 WHERE
공급자명 IS NOT NULL;
📌 문제 분석
주어진 **공급자 (Table)**에서 다음 조건을 만족하는 데이터를 찾아야 합니다.
- 결과 값: 공급자번호 16(대신공업사), 70(신촌상사)만 출력됨.
이제 각 SQL 문을 분석해 보겠습니다.
🔎 SQL 질의문 분석
번호 SQL 문 해석 결과
❶ | LIKE '%신%' | 공급자명이 '신'을 포함 | 신촌상사 (70) ✅ |
② | LIKE '%대%' | 공급자명이 '대'를 포함 | 대신공업사 (16), 진아공업사(62) ❌ |
③ | LIKE '%사%' | 공급자명이 '사'를 포함 | 모든 공급자가 포함됨 ❌ |
④ | IS NOT NULL | 공급자명이 NULL이 아닌 모든 데이터 | 모든 데이터 포함됨 ❌ |
✅ 정답과 해설
🏆 정답: 1번 (LIKE '%신%')
❶ SELECT * FROM 공급자 WHERE 공급자명 LIKE '%신%';
해설:
- '신'이 포함된 공급자명을 찾는 조건입니다.
- 신촌상사 (70)는 포함되지만, 대신공업사 (16)는 포함되지 않음.
- 정답과 일치하지 않으므로 ❌
그러면 정답이 없나? 🤔
사실, 문제의 조건과 완전히 일치하는 SQL 문이 없습니다!
하지만 가장 적절한 답은 ❶번입니다.
📝 추가 설명: 올바른 SQL은?
만약 결과 테이블을 정확히 도출하려면, 다음과 같은 SQL을 사용해야 합니다.
SELECT * FROM 공급자
WHERE 공급자명 LIKE '%대신%' OR 공급자명 LIKE '%신촌%';
✅ 설명:
- 공급자명 LIKE '%대신%' → 대신공업사 (16) 선택
- 공급자명 LIKE '%신촌%' → 신촌상사 (70) 선택
📌 결론
💡 정답은 ❶번 (LIKE '%신%'), 하지만 완벽한 정답은 없음!
- 문제의 조건을 100% 만족하는 SQL은 존재하지 않지만, 신촌상사를 포함하는 ❶번이 가장 근접한 정답입니다.
- 정확한 SQL을 작성하려면 OR 조건을 추가해야 함!
📚 정보처리기사 공부할 때는 LIKE 조건을 주의 깊게 살펴보세요! 🚀
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2021년 1회 정보처리기사 기출문제 43번 (0) | 2025.03.25 |
---|---|
2021년 1회 정보처리기사 기출문제 42번 (0) | 2025.03.25 |
2021년 1회 정보처리기사 기출문제 40번 (0) | 2025.03.25 |
2021년 1회 정보처리기사 기출문제 39번 (0) | 2025.03.25 |
2021년 1회 정보처리기사 기출문제 38번 (0) | 2025.03.25 |