2015-06-02 2 views
1

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

В моей первой таблице значение столбца «ЦЕНА» составляет 130, но при использовании массовой вставки оно было вставлено как 129.60 в другую таблицу.

Моя основная команда вставка:

Insert into InvoiceDetail(InvoiceId,AgentId,ProductCode,BrandId,Qty,Price,ProductType) 
Select SCOPE_IDENTITY(),'12736387',ProductCode,BrandId,Qty,M2CPrice,ProductType from 
UserPackages where AgentId='12736387' 
+0

Являются ли типы данных столбцов, хранящие деньги в обеих таблицах одинаковыми? –

+1

Да, это то же самое, но я думаю, что @ rahul-tripathi говорит правильно ... –

+0

Согласен, мы разместили более или менее в тот же момент, поэтому я не видел его ответа вовремя. –

ответ

0

Я бы порекомендовал вам использовать decimal/numeric вместо money в качестве денег не является точным. Вы можете проверить Should you choose the MONEY or DECIMAL(x,y) datatypes in SQL Server?

Обратите внимание, что тип данных MONEY имеет ошибки округления. Также лучше работать с десятичной точностью. Проверьте блог Aaron Bertrand: Performance/Storage Comparisons : MONEY vs. DECIMAL