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 |
Tags
- 오류
- JS
- 자료형
- 에러
- VisualStudioCode
- select
- 자바
- From
- variable
- 삐옥
- function
- Operator
- 이클립스
- 변수
- 오라클
- Eclipse
- 연산자
- 코딩
- CSS
- 개발자
- 오라클오류
- 서블릿
- Java
- datatype
- HTML
- sqldeveloper
- error
- SQL
- Servlet
- oracle
Archives
- Today
- Total
뇨내
[Oracle - SQL Developer] Date Time Function : 날짜 시간 함수 본문
Date Time Function 날짜 시간 함수
+, -
1. 시각 - 시각 = 일
2. 시각 + 시간(일) = 시각
3. 시각 - 시간(일) = 시각
- 현재 시스템의 시간을 반환
- date sysdate
1
2
3
4
|
select sysdate from dual; -- 21/11/14 => 2021-11-14 00:00:00
-- 날짜 형식 변경! 툴을 따라감 시분초가 첨에 안보이는건 그냥 안보여주는것 원래 포함됨!
select name, join from tblCompany;
|
cs |
예시 1
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
32
33
34
35
|
--현재시각 - 탄생일
select
name,
ibsadate,
round(sysdate - birth) as "탄생 후 일수",
round((sysdate - birth) / 365) as "탄생 후 년수" -- 윤년의 경우는 제외시킴 + 사용 금지
round((sysdate - birth) * 24) as "탄생 후 시수",
round((sysdate - birth) * 24 * 60) as "탄생 후 분수",
round((sysdate - birth) * 24 * 60 * 60 ) as "탄생 후 초수"
from tblMember;
select
title,
adddate,
completedate,
round(completedate - adddate)
from tblShopping
where (completedate - adddate) < 3
order by (completedate - adddate) asc;
select sysdate, sysdate + 100 from dual; -- 100일 뒤
select sysdate, sysdate - 100 from dual; -- 100일 전
-- 1시간뒤
select sysdate + (1/24) from dual;
-- 2시간전
select sysdate - (2/24) from dual;
-- 30분 뒤
select sysdate + (30 / 24 / 60) from dual;
|
cs |
LAST_DAY()
- date last_day(date)
- 해당 컬럼값이 포함된 달의 마지막 날짜
MONTHS_BETWEEN()
- number months_between(date, date)
- 시각 - 시각 = 월
ADD_MONTHS()
- date add_months(date, number)
- 시각 + 시간(월) = 시각
예시 2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
select
name,
round(sysdate - join) as "근무시간(일)",
round((sysdate - join) / 30) as "근무시간(월)", -- 오차범위 심함 사용X
round(months_between(sysdate, join)) as "근무시간(월)", -- 정확한 시간
round(months_between(sysdate, join) / 12) as "근무시간(년)" -- 정확한 시간
from tblCompany;
select
sysdate,
sysdate + 100,
sysdate - 100,
add_months(sysdate, 1), -- 한달 뒤
add_months(sysdate, -1), -- 한달 전
add_months(sysdate, 1 * 12),
add_months(sysdate, -3 * 12)
from dual;
|
cs |
'Oracle > Function' 카테고리의 다른 글
[Oracle - SQL Developer] String Function : 문자열 함수 (0) | 2021.11.14 |
---|---|
[Oracle - SQL Developer] Numerical Function : 숫자 함수 (0) | 2021.11.14 |
[Oracle -SQL Developer] Aggregation Function : 집계함수 (0) | 2021.11.13 |
Comments