2012-06-21 57 views
0

我運行下面的查詢.....列小數點值

SELECT SUM(PAPostedTotalCostN) AS Total_Cost 
FROM PA01201 
WHERE PA01201.PAcontid = '00900' 

其返回值12169298.25000

什麼是讓查詢到任意數量的返回兩位小數的最簡單的方法?

使用相同的返回值作爲一個例子,我想看到的數字顯示爲12169298.25

查詢將被用於返回基於「PAcontid」很多數字,所以我需要有「整列PAPostedTotalCostN'爲2位小數

任何幫助非常感謝。

+2

你想顯示或物理地向上,向下或數學上舍入嗎? – Aprillion

+0

值爲'12169298.25000'的示例結果應該是'12169298.25' – Pankaj

+0

雖然解決此問題的方法很多,但顯示問題最好在SQL以外處理。如果您需要格式化以供稍後顯示,並且您可以在界面(Excel,網頁等)中執行此操作,這些操作通常更適合在性能和程序工作方面。 –

回答

5
SELECT CONVERT(DECIMAL(10,2),SUM(PAPostedTotalCostN)) AS Total_Cost 
FROM PA01201 
WHERE PA01201.PAcontid = '00900' 
+0

完美。這正是我想要的。歡呼你的幫助! – user1086159

2

你可以試試:

CAST(PAPostedTotalCostN AS Numeric(12, 2)) 
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)) 
0
SELECT u.name, CAST(SUM(e.amount * er.tlkarsiligi) AS DECIMAL(10, 2)) from .. 

For It works on Mysql