Как получить строки денежного столбца в sql с точностью более 2 цифр справа от десятичного числа? - PullRequest
4 голосов
/ 28 декабря 2010

Мне трудно понять, как выбрать набор строк из моей таблицы, где точность значения строки больше, чем две цифры справа от десятичной точки.Мне не нужно ни одно из значений с точностью до 2 цифр, я хочу только значения с точностью более 2 цифр.Конечный результат заключается в том, что значения с точностью более 2 цифр необходимо округлить, чтобы ограничить значения только точностью до 2 цифр.Код, который вставляет данные, был исправлен, чтобы вставлять только значения с точностью до 2 цифр, но мне нужно исправить те, которые нет.

Ответы [ 2 ]

1 голос
/ 11 декабря 2014

Я искал ответ на ту же проблему, когда какой-то сценарий, который я написал, создал столбец денег с числом знаков более 2 десятичных знаков - как и вы, мне нужно было пойти и найти записи, которые были больше 2 DP - не мог 'не найти ответ на SO, нашел ответ ниже в другом месте, хотя.

select ID, MoneyColumn from OurTable
WHERE FLOOR(MoneyColumn*100)!=MoneyColumn*100
1 голос
/ 28 декабря 2010

Привет, ваша цель найти эти записи, а затем обновить их? ниже я представляю, что вам нужно сделать:

DECLARE @smallmoney as money 

set @smallmoney = 1.0097

SELECT @smallmoney as actualValue, ROUND(@smallmoney,2)
WHERE @smallmoney <> ROUND(@smallmoney,2)

Как видите, если сумма денег уже находится в пределах двух десятичных знаков, условие where отфильтрует эту запись.

Надеюсь, это работает для вас!

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