Я искал и не могу найти ответ. Я дважды проверил типы данных между SQL и CLR, и мне кажется, что это правильно. Но я получаю другой результат между использованием CLR и SQL. Не много, но достаточно, чтобы оторваться от копейки. И это не приемлемо.
Пример в VB.NET
Dim dLoanAmount As Decimal = 169500
Dim dNetDiscount As Decimal = 100.871
Dim dDiscountPremium As Decimal = (dLoanAmount * (dNetDiscount - 100.0) / 100.0)
Console.WriteLine("original amount is " + dDiscountPremium.ToString())
будет отображать 1476,34499999999
Пример в SQL
DECLARE @loanAmt decimal (20,10)
DECLARE @discount decimal (20,10)
SET @loanAmt = 169500.000000
SET @discount = 100.871000
select @loanAmt*(@discount-100.0)/100.0
, возвращающее 1476.345000000000000
Мы должны использовать VB для некоторых документов, но для некоторых передач файлов мы используем sql. У кого-нибудь есть предложения, почему это так?
ура
боб