ЦИКЛ приведения к деньгам округляется - PullRequest
2 голосов
/ 12 ноября 2009

При приведении значения varchar к ДЕНЬГАМ оно округляет значение до ближайшего 0,10, как я могу предотвратить это округление?

ОБНОВЛЕНИЕ: Я нашел проблему. В подзапросе значением является CAST от varchar до FLOAT, а затем я пытался CAST от FLOAT до MONEY.

Ответы [ 2 ]

6 голосов
/ 12 ноября 2009

Посмотрите эту очень интересную запись в блоге Брэда Шульца именно на эту тему:

Выбросьте свои деньги

Он выступает за то, чтобы никогда не использовать тип данных MONEY по разным причинам - интересное и вдохновляющее чтение!

Марк

4 голосов
/ 12 ноября 2009

Я не уверен, что понимаю вашу проблему.

При взгляде на код ниже

DECLARE @money AS MONEY,
        @varchar AS VARCHAR(20)

SET @varchar = '1000.456789'

SELECT CAST(@varchar AS MONEY)
SELECT @money = @varchar
SELECT @money

округляется до ближайшего 4-го знака, а не до 1-го знака.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...