다음 상황에서 검색 결과가 나오지 않는 이유로 가장 적절한 것은?

과목: MySQL

문제 번호: 3265

medium
다음 상황에서 검색 결과가 나오지 않는 이유로 가장 적절한 것은?
-- 테이블 데이터
OrderDate: '2008-11-11 13:23:44'

-- 검색 쿼리
SELECT * FROM Orders WHERE OrderDate = '2008-11-11';
A. 날짜 형식이 잘못되어서
B. 컬럼명이 틀려서
C. 저장된 데이터에 시간 정보가 포함되어 있어서
D. MySQL이 날짜 비교를 지원하지 않아서

정답: C



⦁ 검색 조건 '2008-11-11'과 실제 저장된 값 '2008-11-11 13:23:44'가 정확히 일치하지 않기 때문입니다

⦁ 정확한 비교 과정:
⦁ 검색 조건: '2008-11-11' (시간 정보 없음)
⦁ 저장된 값: '2008-11-11 13:23:44' (시간 정보 포함)
⦁ MySQL은 정확한 일치를 요구하므로 결과 없음

⦁ 실무에서의 해결책:
-- 방법 1: DATE 함수로 날짜 부분만 추출
SELECT * FROM Orders WHERE DATE(OrderDate) = '2008-11-11';

-- 방법 2: 범위 검색 사용
SELECT * FROM Orders 
WHERE OrderDate >= '2008-11-11' AND OrderDate < '2008-11-12';

-- 방법 3: LIKE 패턴 사용 (권장하지 않음)
SELECT * FROM Orders WHERE OrderDate LIKE '2008-11-11%';

💡 학습 팁

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