2017-08-31 27 views
1

所以我有这样的:如何在动态数据透视中舍入数字?

DECLARE @DynamicPivotQuery AS NVARCHAR(MAX) 
DECLARE @ColumnName AS NVARCHAR(MAX) 


--Get distinct values of the PIVOT Column 
SELECT @ColumnName= ISNULL(@ColumnName + ',','') 
     + QUOTENAME(period) 
FROM (SELECT DISTINCT period FROM atbv_Accounting_Transactions WHERE lAccountNO LIKE '6%' AND Period LIKE '2017%') AS Periods 

SET @DynamicPivotQuery = 
    N'SELECT lAccountNo, ' + @ColumnName + ' 
    FROM (SELECT 
    lAccountNo, period, SUM(Amount) As Total 
    FROM atbv_Accounting_Transactions 
    WHERE lAccountNO LIKE ''6%'' AND Period LIKE ''2017%'' 
    GROUP BY lAccountNo, period 
    ) AS T 
    PIVOT(SUM(TOTAL) 
      FOR period IN (' + @ColumnName + ')) AS PVTTable' 

--Execute the Dynamic Pivot Query 
EXEC sp_executesql @DynamicPivotQuery 

它返回我:

enter image description here

如何删除小数位中选择本身。我无法编辑表格中的列并减少小数位数。因此,我需要编辑此查询以返回不带小数的值。

谢谢!

回答

1

应该只是将SUM(Amount)更改为cast(SUM(Amount) as int)或者floor(SUM(Amount)),它会起作用。