SELECT ROUND(1000/11,0)
-- 90
DECLARE @v_intMoney MONEY
DECLARE @v_intResultMoney MONEY
SET @v_intMoney = 1000
SELECT @v_intResultMoney = ROUND(@v_intMoney/11,0)
SELECT @v_intResultMoney
-- 91
위 처럼 수행하면 서로 다른 결과 값을 가지게 됩니다. 무슨 차이 때문에 1이 라는 값이 차이가 발생하는지 알 수 있을까요?
MSDN설명에 의하면 1/1000의 정확도를 갖는다 라고 명시되어 있는데 그렇다면 11로 나누면서 소수점 이하 반올림 처리되서
그렇다라고 봐야될까요?
SELECT 1000/11 , 1000. /11 확인해 보시면