주니어 개발자가 되는 중입니다...loading....
Oracle 날짜(DATE) 처리 함수 본문
| SYSDATE | 현재 년, 월 ,일 |
| SYSTIMESTAMP | 현재 년, 월, 일, 시, 분, 초 |
1. 날짜 연산하기
-- 일 수 증감
SELECT SYSDATE-1
FROM DUAL;
SELECT SYSDATE+1
FROM DUAL;
2. NEXT_DAY
: 매개변수로 전달받은 요일 중 가장 가까운 다음 날짜 출력
SELECT SYSDATE, NEXT_DAY(SYSDATE, '화')
FROM DUAL;
3. 다른 나라의 시간을 출력
SELECT * FROM V$NLS_PARAMETERS;
ALTER SESSION SET NLS_LANGUAGE='AMERICA';
4. EXTRACT
: 날짜의 년도, 월, 일자를 따로 출력할 수 있게 해주는 함수, 대소비교가능
SELECT EXTRACT(YEAR FROM SYSDATE), XTRACT(MONTH FROM SYSDATE), EXTRACT(DAY FROM SYSDATE)
FROM DUAL;
5. 대소비교 가능
SELECT EMP_NAME, SALARY, BONUS, HIRE_DATE
FROM EMPLOYEE
WHERE HIRE_DATE BETWEEN '00/01/01' AND '02/12/31';
SELECT EMP_NAME, SALARY, HIRE_DATE
FROM EMPLOYEE
WHERE EXTRACT(YEAR FROM HIRE_DATE)>=1990 AND EXTRACT(YEAR FROM HIRE_DATE)<2000;
SELECT EMP_NAME, SALARY, HIRE_DATE
FROM EMPLOYEE
WHERE EXTRACT(YEAR FROM HIRE_DATE)> BETWEEN 1990 AND 1999;
6. ADD_MONTH
: 개월을 더할 때 사용하는 함수
: 12를 넘으면 다시 1로 시작되는 오버플로우
SELECT ADD_MONTHS(SYSDATE,3)
FROM DUAL;
7. MONTHS_BETWEEN
-- 두개의 날짜를 받아서 두 날짜의 개월 수 차이를 연산하는 함수 : -값도 나온다
SELECT MONTHS_BETWEEN(SYSDATE,'97/2/26'), MONTHS_BETWEEN(SYSDATE,'22/12/5')
FROM DUAL;
8. TO_CHAR
: 숫자, 날짜를 문자형으로 변환해주는 함수
SELECT SYSDATE, TO_CHAR(SYSDATE, 'YYYY-MM--DD'), TO_CHAR(SYSDATE, 'YYYY-MM--DD HH:MI:SS'),
TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
FROM DUAL;
9. TO_DATE
: 문자를 날짜로, 숫자를 날짜로 변경해주는 함수
SELECT TO_DATE('24/12/25','YY/MM/DD')-SYSDATE, TO_DATE('241215', 'YYMMDD')-SYSDATE
,TO_DATE(980101,'YYMMDD')
--,TO_DATE(001225,'YYMMDD') 0으로 시작하는 숫자는없음- > 컴퓨터 인식 : 1225
,TO_DATE(TO_CHAR(001225,'009999'),'YYMMDD')
FROM DUAL;
'Oracle 오라클' 카테고리의 다른 글
| Oracle JOIN : 테이블을 합쳐서 출력하기 (0) | 2022.10.20 |
|---|---|
| Oracle 그룹함수 GROUP BY (0) | 2022.10.20 |
| Oracle 함수 (0) | 2022.10.20 |
| Oracle SQL 정의 (0) | 2022.10.20 |
| Oracle Database개요 (0) | 2022.10.20 |