주니어 개발자가 되는 중입니다...loading....

Oracle 날짜(DATE) 처리 함수 본문

Oracle 오라클

Oracle 날짜(DATE) 처리 함수

휼양 2022. 10. 20. 19:06
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
Comments