我运行以下查询.....
SELECT SUM(PAPostedTotalCostN) AS Total_Cost
FROM PA01201
WHERE PA01201.PAcontid = '00900'
返回值12169298.25000
让查询返回任意数字到两位小数的最简单方法是什么?
使用相同的返回值作为示例我希望看到该数字显示为12169298.25
查询将用于返回基于'PAcontid'的多个数字,因此我需要将'PAPostedTotalCostN'的整列列为2位小数
任何帮助非常感谢。
答案 0 :(得分:5)
SELECT CONVERT(DECIMAL(10,2),SUM(PAPostedTotalCostN)) AS Total_Cost
FROM PA01201
WHERE PA01201.PAcontid = '00900'
答案 1 :(得分:2)
您可以尝试:
CAST(PAPostedTotalCostN AS Numeric(12, 2))
答案 2 :(得分:0)
http://msdn.microsoft.com/en-us/library/ms175003.aspx
您可以使用ROUND功能:
ROUND ( numeric_expression , length [ ,function ] )
答案 3 :(得分:0)
CAST
可以是带有2个位置的小数:
select CAST(PAPostedTotalCostN as decimal(20, 2))
示例:
declare @t as decimal(20, 5)
set @t = 12169298.250000
select cast(@t as decimal(20, 2))
结果:
12169298.25
如果你不希望它被四舍五入,那么如果你的值可以四舍五入,那么这将舍入结果:
select cast(round(@t, 2, 1) as decimal(20, 2))
答案 4 :(得分:0)
SELECT u.name, CAST( SUM( e.amount * er.tlkarsiligi ) AS DECIMAL( 10, 2 ) ) from ..
For It适用于Mysql