[SQL퀴즈] substr과 TO_CHAR차이

💡 핵심 요약 (TL;DR)

'substr과 TO_CHAR차이'에서 다루는 각 기술의 핵심 개념과 동작 방식의 차이점을 분석한 내용이다. 동작 원리와 장단점을 비교 파악하여 프로젝트 개발 상황에 적합한 방식을 선택할 수 있다.

문제

employees 테이블로부터 각 월의 16일 이전에 채용된 사원을 모두 출력하는 쿼리구문을 작성하시오.
사용가능한 컬럼명 : hire_date, last_name

내코드

1
2
3
select last_name, hire_date
from employees
where substr(hire_date, -2, 2) < 16;

강사님쿼리

1
2
3
SELECT last_name, hire_date 
FROM employees
WHERE TO_CHAR(hire_date, 'DD') < 16;

배운지식

날짜형식은 나라에 따라 달라진다. 우리나라는 년-월-일순이지만 미국은 보통 월-일-년순, 뉴질랜드는 보통 일-월-년이기도 하다. 이처럼 다양한 나라가 서로 다른 날짜형식을 사용한다.
내 코드처럼 substr를 사용하면 날짜형식이 변하는 순간 다시 index값을 찾아서 작성해야한다.

하지만 TO_CHAR를 사용하면 DD를 찾기때문에 날짜형식이 달라도 날짜만을 찾아서 쿼리를 진행할 수 있어 수월하다.

#TILITWILL(JAVA)OracleSQL퀴즈

Author

sowon-dev

Posted on

2020-10-12

Updated on

2026-10-21

Licensed under

CC BY 4.0

댓글