본문 바로가기
IT ▶/Data

데이터베이스 SQL 기본함수 정리 (숫자, 날짜 함수)

by 오프로 2020. 3. 2.

 

 

 

 

안녕하세요.!!!

 

 

데이터베이스 SQL 쿼리에서 기본 숫자, 날짜 관련 함수 정리한 내용입니다.

 

 

DECODE, ROUND, FLOOR, MOD, POWER 등 숫자 관련해서 반올림하거나 버림을 하거나 숫자를 표현하고자 

 

할때 알맞게 사용하시면 좋습니다.

 

 

날짜 관련해서는 TO_CHAR(), TO_DATE() 함수를 이용하여 다양하게 날짜를 표시하는 방법 정리하였습니다.

 

 

 

 

 

1> 숫자 관련 함수

 

 

 

- DECODE 함수

 

컬럼 값이 n 일치하면 뒤의 결과를 반환

 

기본값이 없을 경우, Null 반환

 

 

 

<Example>

 

DECODE(A,1,2,B)

 

-> A 1이면 2 반환하고, 아니면 B 반환한다.

 

 

 

 

- ROUND 함수

 

ROUND(M,N) : 해당 M값을 N자리 까지 반올림한다.

 

ROUND(M) : M값을 소수점 위로 반올림한다.

 

 

 

<Example>

 

ROUND(123.4267,3) -> 123.457

 

ROUND(123.5267) -> 124

 

ROUND(SUM(AMT)/1.5) -> AMT 합계를 1.5 나눈 값을 반올림한다.

 

 

 

 

- TRUNC 함수

 

TRUNC(M,N) : 해당 M값에서 N자리 미만을 절삭(버림)한다.

 

 

 

<Example>

 

TRUNC(123.4267,3) -> 123.456

 

TRUNC(123.5267) -> 123

 

TRUNC(SUM(AMT)/1.5) -> AMT 합계를 1.5 나눈 값을 절삭(버림)한다.

 

 

 

 

- MOD 함수

 

MOD(M,N) : 해당 M값에서 N자리 미만을 절삭(버림)한다.

 

 

 

<Example>

 

MOD(100,6) -> 4

 

MOD(123.5267) -> 123

 

MOD(SUM(AMT)/1.5) -> AMT 합계를 1.5 나눈 값을 절삭(버림)한다.

 

 

 

 

- POWER 함수

 

POWER(M,N) : 해당 M값에서 N승 계산한다.

 

 

 

<Example>

 

POWER(5,3) -> 125

 

 

 

 

- CEIL 함수

 

CEIL(M) : M보다 큰 가장 작은 정수 출력한다.

 

 

<Example>

 

CEIL(3.14) -> 4

 

 

 

 

- FLOOR 함수

 

FLOOR(M) : M보다 작은 가장 큰 정수 출력한다.

 

 

<Example>

 

FLOOR(3.14) -> 3

 

 

 

 

- ABS 함수

 

ABS(M) : M의 절대값을 출력한다.

 

 

<Example>

 

ABS(-3) -> 3

 

 

 

 

[종합 예문]

 

SELECT ROUND(3.14717,2), TRUNC(3.14717,2), MOD(100,6), POWER(5,3), CEIL(3.14), FLOOR(3.14), ABS(-3) 

FROM DUAL;

 

 

[실행 결과]

 

 

 

 

 

 

 

 

2> 날짜 관련 함수

 

 

날짜 + 숫자 N ->해당 날짜에 N 일자를 더한 날짜

 

날짜 - 숫자 N ->해당 날짜에 N 일자를 뺀 날짜

 

날짜 + N/24 -> 해당 날짜에 N 시간을 더한 날짜

 

날짜 – 날짜 -> 두 날짜 간의 차이 (일수)

 

 

 

[Example]

 

SELECT SYSDATE "현재시간", SYSDATE+2/24 "현재시간+2시간" 

FROM DUAL; 

 

 

 

 

 

 

- 데이터 변환 함수

 

 

TO_CHAR : 날짜나 숫자를 문자형으로 변환

 

-> TO_CHAR(날짜, 출력형식), TO_CHAR(숫자, 출력형식)

 

 

TO_DATE : 데이터를 날짜형으로 변환

 

->  TO_DATE(문자, 변환형식)

 

 

TO_NUMBER : 데이터를 숫자로 해석

 

 

 

 

[Example]

 

SELECT  

TO_CHAR(SYSDATE, 'YYYY/MM/DD') 날짜,
TO_CHAR(SYSDATE, 'YYYYMMDD') 날짜0,
TO_CHAR(SYSDATE, 'YYYY-MM-DD:HH24:MI') 날짜1,
TO_CHAR(SYSDATE, 'YYYY/MM/DD HH24:MI:SS') 날짜2,
TO_CHAR(SYSDATE, 'YYYY/MM/DD:HH:MI:SS AM') 날짜3,
TO_CHAR(SYSDATE, 'YYYY/MM/DD:HH:MI:SS PM') 날짜4,
TO_CHAR(SYSDATE, 'DY MON YY') 날짜5,
TO_CHAR(SYSDATE, 'DAY MONTH YYYY') 날짜6,
TO_CHAR(SYSDATE, '"금일은" YYYY" 년 "MM" 월 "DD" 일 입니다."') 날짜7 

FROM DUAL;

 

 

 

<실행 결과>

 

 

 

 

 

 

추가로 DB 관련 쿼리 설명은 아래 내용 참고하시기 바랍니다.!!!!

 

 

[IT/Data] - SQL 쿼리 기본함수 정리 및 예시 (UPPER, CONCAT, INITCAP, SUBSTR)

 

SQL 쿼리 기본함수 정리 및 예시 (UPPER, CONCAT, INITCAP, SUBSTR)

안녕하세요! 데이터베이스 SQL 쿼리에서 문자열을 다루는 기본 함수를 정리해보았습니다. 매번 사용은 아니지만 뭔가 데이터 가공이 필요할 때 사용하시면 좋을 것 같습니다. 1> UPPER 함수 전부 대문자로 변경하..

lovefor-you.tistory.com

 

 

감사합니다.

 

 

 

 

728x90
300x250