본문 바로가기

컴퓨터/SQL Server

Oracle의 trunc 함수 사용하기


오라클에서는 TRUNC함수를 사용하면 지정한 자릿수의 숫자를 삭제할 수 있는데 

SQL Server로 바꾸다보니깐 TRUNC 함수가 없는 것을 알게되었다.


그럴때에는 ROUND 함수를 사용하면 된다!

ROUND 함수 세 번째 인수에서 0 이아닌 다른 수를 입력하면 두 번째 인수에서 지정한 자리의 수가 잘리게 된다.


예를 들어서 1.25 이 있다고 하면

SELECT ROUND(1.25, 1, 1)

의 결과값은 1.20 이고

 SELECT ROUND(1.25, 1, 0)

의 결과값은 1.30 이다



<ROUND 함수>

- 구문

ROUND ( numeric_expression , length [ ,function ] )

- 인수
numeric_expression

bit 데이터 형식을 제외한 정확한 수치 또는 근사치 데이터 형식 범주의 입니다.

length

numeric_expression을 반올림하는 전체 자릿수입니다. length tinyint, smallint 또는 int 유형의 식이어야 합니다. length가 양수일 경우 numeric_expression length에서 지정한 소수 자릿수로 반올림됩니다. length가 음수일 경우 numeric_expression length에서 지정한 대로 소수점의 왼쪽에서 반올림됩니다.

function

수행할 연산의 유형입니다. function tinyint, smallint 또는 int여야 합니다. function을 생략하거나 값이 0(기본값)일 경우 numeric_expression은 반올림됩니다. 0이 아닌 값을 지정하면 numeric_expression이 잘립니다.



출처 : http://msdn.microsoft.com/ko-kr/library/ms175003.aspx


'컴퓨터 > SQL Server' 카테고리의 다른 글

MSSQL timestamp  (0) 2014.12.10
[링크]CLUSTERED INDEX와 NONCLUSTERED INDEX의 차이  (0) 2014.12.07
SQL Server 오류 - Msg199  (0) 2014.11.03
사용자 정의 데이터 타입  (0) 2014.06.04
데이터베이스란?  (0) 2014.06.04