4.MySql(scott)-기본문법 - 숫자 함수, 날짜 함수

JungSik Heo·2024년 12월 15일
1

MySQL

목록 보기
15/33

숫자 함수들

<1> ABS(숫자) => 숫자의 절대값을 반환함 (음수를 양수로 반환)

SQL> select abs(-10)from dual;

<2> CEIL(소수점이 있는 수) => 파라미터 값보다 같거나 가장 큰 정수는 반환(올림)

SQL> select ceil(3.1234) from dual;
SQL> select ceil(5.9999) from dual;

<3> floor(소수점이 있는 수) => 파라미터 값보다 같거나 가장 작은 정수 반환(내림)

SQL> select floor(3.2241) from dual;
SQL> select floor(2.888829) from dual;

<4> ROUND(숫자,자리수) => 숫자를 자리수 +1번째 위치에서 반올림한다

SQL> select round(3.22645,2) from dual;
SQL> select round(5.2345,3) from dual;

<5> MOD (숫자1,숫자2) => 숫자1을 숫자2로 나눈 나머지를 리턴한다

SQL> select mod(10,3) from dual;

<6> TRUNCATE(숫자1,자리수) => 숫자1의 값을 소수점이하 자리수까지만 나타난다. 나머지는 잘라낸다

SQL> select truncate(12.23532576,2) from dual;
SQL> select truncate(34.1234)from dual;

날짜 함수 ( 중요!! 자주 쓰인다 )

<1> 현재 시간을 리턴

-- 함수 시작 시점 값 반환
SQL> select sysdate() from dual; 
-- 쿼리가 완료되는 시점 값 반환
SQL> select now() from dual;

<2> 날짜 계산 (날짜,더해질월)

-- 함수 시작 시점 값 반환
SQL> select sysdate() from dual; 
-- 쿼리가 완료되는 시점 값 반환
SQL> select now() from dual;
  • 현재 시간에 1초 더하기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND);

  • 현재 시간에 1분 더하기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE);
    +현재 시간에 1시간 더하기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR);

  • 현재 시간에 1일 더하기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);

  • 현재 시간에 1달 더하기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH);

  • 현재 시간에 1년 더하기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR);

  • 현재 시간에 1년 빼기
    SQL> SELECT DATE_ADD(NOW(), INTERVAL -1 YEAR);

<3> LAST_DAY (날짜) => 해당날짜에 해당하는 달의 마지막 날짜를 반환한다

SQL> select last_day(now()) from dual;

<4> TIMESTAMPDIFF(단위,날짜1,날짜2) => 두 날짜 차이

SQL> select empno, TIMESTAMPDIFF(YEAR, hiredate, NOW()) from emp;

날짜 형식 변환 함수 ( 중요!!! )

-DATE_FORMAT

SQL> select DATE_FORMAT(NOW(),'%Y-%m-%d') from dual;

-숫자 변환 함수 to_number('숫자에 대응되는 문자');

SQL> select CAST('999' AS INTEGER)+1 from dual;

-날짜 변환 함수

  • to_date('날짜에 대응되는 문자');
SQL> select STR_TO_DATE('2012-12-12', '%Y-%m-%d') from dual;
profile
쿵스보이(얼짱뮤지션)

0개의 댓글