SQL

SQL의 숫자 함수, 날짜 계산 함수

crazydeer 2021. 12. 15. 22:00
반응형

숫자함수

round, trunc, mod, power

 

 

round

반올림 하는 함수

 

예)

select 2567.56, round(2567.56)

  from dual;

 

결과)

2567.56, 2567.6

 

 

trunc

잘라내는 함수

 

예)

select 2567.56, trunc(2567.56, 1)

  from dual;

 

결과)

2567.56, 2567.5

 

설명)

trunc(OOO.OO, 1)은 소수 첫번째 자리 아래로 모두 날려버린다는 의미

 

 

mod

나눈 나머지 값을 출력하는 함수

 

예)

select mod(10, 3)

  from dual;

 

결과)

1

 

설명)

10을 3으로 나눈 나머지

 

 

power

power(a, b) a의 b제곱

 

예)

select power(2, 3)
  from dual;

 

결과)

8

 

 

months_between

months_between(a, b)

: b 날짜부터 a 날짜까지 총 개월 수

 

예)

select ename, round(months_between(sysdate, hiredate))

  from emp;

 

테이블 설명)

 

 

add_months

add_months(a, b)

: a 날짜에서 b개월을 더해준 값

 

예)

select sysdate + 100 from dual;

 

결과)

 

예)

select sysdate, add_months(sysdate, 100)

  from dual;

 

결과)

 

 

next_day

next_day(a, b)

: a 날짜부터 b(요일) 이 돌아오는 날짜를 구하는 함수

 

예)

select sysdate, next_day(sysdate, 'monday')
    from dual;

 

결과)

 

설명)

오늘 날짜: 2021년 12월 15일

다음 '월요일'이 오는 날짜: 2021년 12월 20일

 

 

last_day

last_day(날짜)

: 해당 날짜의 마지막 날짜 출력

 

예)

select sysdate, last_day(sysdate)

  from dual;

 

결과)

>> 12월 31일

 

 

예 2) 오늘부터 이번 달 말일까지 몇 일 남았는지 출력하시오

 

정답)

select last_day(sysdate) - sysdate
  from dual;

 

결과)

오늘부터 말일까지 남은 일 수

 

반응형