我需要你的帮助:SUM函数不返回小数
我想要得到的金额字段的总和,它包含十进制值,但我得到的只是INTEGER
一部分,我需要DECIMAL
太:
DECLARE @TOTAL AS DECIMAL(13,2)
SET @Total = (SELECT SUM(Amount)
FROM t_DownPmtTrans
WHERE MortgageID = @MortgageID
AND DatePaid IS NULL
AND SchedPayment IS NOT NULL)
我试图用游标,但我得到相同的:
OPEN dpt_cursor
SET @Total= 0.0
FETCH NEXT FROM dpt_cursor INTO @DownPmtTransID, @Amount
WHILE @@FETCH_STATUS= 0
BEGIN
PRINT @Amount
SET @Total = (@Total + @Amount)
FETCH NEXT FROM dpt_cursor
INTO @DownPmtTransID, @Amount
END
RETURN @Total* (-1)
CLOSE dpt_cursor
DEALLOCATE dpt_cursor
谢谢!
当你声明@Total,什么样的数据类型是它的价值? – Melanie 2013-04-08 18:12:17
您使用的是什么DBMS? Plelase编辑你的问题,并用你的实现的特定标签替换sql标签。 – Barmar 2013-04-08 18:12:48
@Barmar'@@ FETCH_STATUS'表示SQL Server。 – Kermit 2013-04-08 18:13:54