我正在创建一个存储过程,我打算每24小时通过一个作业运行。我能够成功运行过程查询,但由于某些原因,这些值似乎没有意义。见下文。存储过程SELECT UPDATE错误的值
这是我的表,它看起来像前程序的运行,使用下面的语句:
SELECT HardwareAssetDailyAccumulatedDepreciationValue,
HardwareAssetAccumulatedDepreciationValue FROM HardwareAsset
我然后运行下面的过程(与基本意图在复制到DailyDepreciationValue的DepreciationValue值):
BEGIN
SELECT HardwareAssetID, HardwareAssetDailyAccumulatedDepreciationValue,
HardwareAssetAccumulatedDepreciationValue FROM HardwareAsset
WHERE HardwareAssetDailyAccumulatedDepreciationValue IS NOT NULL
UPDATE HardwareAsset SET HardwareAssetAccumulatedDepreciationValue = CASE WHEN
(HardwareAssetAccumulatedDepreciationValue IS NULL) THEN
CONVERT(DECIMAL(7,2),HardwareAssetDailyAccumulatedDepreciationValue) ELSE
CONVERT(DECIMAL(7,2),(HardwareAssetAccumulatedDepreciationValue + HardwareAssetDailyAccumulatedDepreciationValue))
END
END
但是,当我重新运行select语句的结果是小号如下:
这真的犯规任何意义,我在所有的任何想法?
'SET AccTotal = ISNULL(AccTotal,0)+ AccDaily' – Malk
@Malk,我给它一去,同样的结果。 – TheTechnicalPaladin
列上的数据类型是什么? – Malk