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을 사용해서 계산해도 됩니다.
'개발 > DB' 카테고리의 다른 글
ms msql where절 if문 쓰기 (0) | 2017.10.30 |
---|---|
MSSQL Cursor(커서) 란? (0) | 2017.09.08 |
[MS SQL] mssql loop 반복문 (0) | 2017.09.07 |
oracle 날짜 포맷 (0) | 2017.08.30 |
MS-SQL 날짜형식 SELECT (0) | 2017.08.29 |