반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- HAVING
- 제어문
- SQL
- ifelse
- 칼럼명에 별칭 지정
- .substring
- SELECT 절
- 삼항연산자
- 향상된for문
- 자바
- 상속
- getter
- 카카오인턴십
- 작성순서
- for문
- 생성자쓰는이유
- 오라클
- Join
- Java
- 생성자
- 겟터
- .repeat
- executeUpdate
- 연산자
- 객체
- setter
- sql오류
- 이터레이블
- int오류
- 프로그래머스
Archives
- Today
- Total
CoDream
[SQL] 단일행 함수 > 날짜 함수 본문
728x90
반응형
<날짜 함수>
SYSDATE (현재)
-
- 시스템의 현재 날짜와 시간을 반환한다.
SELECT SYSDATE FROM DUAL;
MONTHS_BETWEEN (기간)
- [문법] MONTHS_BETWEEN(DATE1, DATE2)
- 입력받은 두 날짜 사이의 개월 수를 반환한다.
- 결과값은 NUMBER 타입이다.
-- EMPLOYEE 테이블에서 직원명 입사일, 근무개월수 조회 SELECT EMP_NAME, HIRE_DATE, MONTHS_BETWEEN(SYSDATE,HIRE_DATE)AS 근무개월수 FROM EMPLOYEE;
ADD_MONTHS (몇 개월 이후)
- [문법] ADD_MONTHS(DATE, NUMBER)
- 특정 날짜에 입력받는 숫자만큼의 개월 수를 더한 날짜를 리턴한다.
- 결과값은 DATE 타입이다.
-- 지금 날짜에서 +3개월 SELECT ADD_MONTHS(SYSDATE,3) FROM DUAL;
NEXT_DAY (요일의 가장 가까운 날짜)
- [문법] NEXT_DAY(DATE, 요일(문자|숫자))
- 특정 날짜에서 구하려는 요일의 가장 가까운 날짜를 리턴한다.
- 결과값은 DATE 타입이다.
- -오늘이랑 가장 가까운 '목요일' SELECT SYSDATE, NEXT_DAY(SYSDATE, '목요일') FROM DUAL; SELECT SYSDATE, NEXT_DAY(SYSDATE, '화') FROM DUAL; SELECT SYSDATE, NEXT_DAY(SYSDATE, 1) FROM DUAL;-- 1:일요일, 2:월요일, ..., 7:토요일 SELECT SYSDATE, NEXT_DAY(SYSDATE, 'SUNDAY') FROM DUAL; -- 에러(현재 언어가 KOREAN이기 때문에) ALTER SESSION SET NLS_LANGUAGE = AMERICAN; -- 언어 변경 SELECT SYSDATE, NEXT_DAY(SYSDATE, 'SUNDAY') FROM DUAL; SELECT SYSDATE, NEXT_DAY(SYSDATE, 'MON') FROM DUAL; SELECT SYSDATE, NEXT_DAY(SYSDATE, 6) FROM DUAL; SELECT SYSDATE, NEXT_DAY(SYSDATE, '목') FROM DUAL; -- 에러 발생 SELECT SYSDATE, NEXT_DAY(SYSDATE, '목요일') FROM DUAL; -- 에러 발생 ALTER SESSION SET NLS_LANGUAGE = KOREAN; -- 언어 변경
LAST_DAY (월의 마지막 날짜)
- [문법] LAST_DAY(DATE)
- 해당 월의 마지막 날짜를 반환한다.
- 결과값은 DATE 타입이다.
*SELECT LAST_DAY(SYSDATE) FROM DUAL;*
EXTRACT (연도, 월, 일 )
- EXTRACT(YEAR|MONTH|DAY FROM DATE);
--포멧변경 ALTER SESSION SET NLS_DATE_FORMAT= 'YYYY-NN-DD HH:NI:SS'; ALTER SESSION SET NLS_DATE_FORMAT= 'RR/MM/DD'; SELECT SYSDATE FROM DUAL;
- 특정 날짜에서 연도, 월, 일 정보를 추출해서 반환한다.
- YEAR : 연도만 추출
- MONTH : 월만 추출
- DAY : 일만 추출
- 결과값은 NUMBER 타입이다.
728x90
반응형
'[DB]Oracle SQL > Oracle SQL 이론' 카테고리의 다른 글
[SQL] NULL 처리 함수 (0) | 2024.03.23 |
---|---|
[SQL] 형변환 함수 (1) | 2024.03.23 |
[SQL] 단일행 함수> 숫자함수 (0) | 2024.03.23 |
[SQL] 단일행함수 > 문자관련함수 (0) | 2024.03.23 |
조인(JOIN) / 내부 조인, 외부 조인, 왼쪽 외부 조인, 오른쪽 외부 조인, 전체 외부 조인 (0) | 2024.03.21 |