개발/DB

[MS-SQL] mssql 소수점 연산 방법

료팡 2017. 9. 11. 14:12

MSSQL 소수점 계산방법


DECLARE @S_COUNT           AS NUMERIC(18,3)

DECLARE @I_TEST1              AS NUMERIC(18,2)  = 7.00

DECLARE @I_TEST2              AS INT  = 90


SET @S_COUNT = @I_TEST1 * (convert(float,@I_TEST2)/100)

--@I_TEST1 *(@I_TEST2/100)



PRINT @S_COUNT


주석처리한것 처럼 @I_TEST1 *(@I_TEST2/100) 했을경우 (@I_TEST2/100)


계산을 하는 경우 0.000 으로 나옴니다.


담는 변수가 일반 INT가 아니라 NUMBERIC이라 그런듯 합니다.


위에처럼 float으로 처리하던지 아니면


SET @S_COUNT = @I_TEST1 *(convert(decimal(13,3),@I_TEST2)/100)


이렇게 decimal을 사용해서 계산해도 됩니다.