※ EMP 테이블 구조
※ 날짜 함수
함수 | 결과 |
months_between | 두 날짜 간의 개월 수 |
add_months | 날짜에 월 추가 |
next_day | 지정된 날짜의 다음 특정 요일의 날짜 |
last_day | 해당 월의 마지막 날 |
round | 날짜의 반올림 |
trunc | 날짜 truncate |
# 문제 42. 이름, 입사한 날짜부터 오늘까지 총 몇일 근무했는지 출력하시오.
select ename, round(sysdate-hiredate) from emp; |
- sysdate는 오늘 날짜를 날짜형식에 맞춰서 출력해준다. |
# 문제 43. 이름, 입사한 날짜부터 오늘까지 총 몇달을 근무했는지 출력하시오.
select ename, round(months_between(sysdate, hiredate)) from emp; |
- months_between(최신, 과거) 형식을 꼭 지켜줘야 한다!!! |
# 문제 44. 오늘 날짜에서 100일 뒤의 날짜를 출력하시오.
select sysdate + 100 from dual; |
# 문제 45. 오늘 날짜에서 10달 뒤의 날짜를 출력하시오.
select add_months(sysdate,10) from dual; |
# 문제 46. 오늘 날짜에서 앞으로 돌아올 금요일의 날짜를 출력하시오.
select next_day(sysdate, '금요일') from dual; |
- 한글 sqlgate를 사용하고 있기 때문에 금요일이라 써도 무방하지만 보통 Friday를 쓴다. |
# 문제 47. 오늘 날짜에서 100달뒤 돌아올 월요일의 날짜를 출력하시오.
select next_day( add_months(sysdate,100), '월요일' ) from dual; |
# 문제 48. 이번 달의 마지막 날짜를 출력하시오.
select last_day(sysdate) from dual; |
'Itwill 학습내용 정리 > 1. SQL' 카테고리의 다른 글
2.5 (단일행 함수) 일반 함수 & pivot 사용법 (0) | 2019.04.18 |
---|---|
2.4 (단일행 함수) 변환 함수 (0) | 2019.04.18 |
2.2 (단일행 함수) 숫자함수 (0) | 2019.04.18 |
2.1 (단일행 함수) 문자 함수 (0) | 2019.04.17 |
1.3 Order by절 & 치환함수 (0) | 2019.04.17 |