2017-09-18 70 views
1

我需要訪問bigint數據進行處理。所以我試圖把它轉換成字符並處理它。但是我注意到一些bigint數字沒有出現在輸出表中。我試着做一個下面列出的示例程序,這是複製問題。SAS- Put函數用於將bigint轉換爲char - 生成不正確的輸入

data m; 
x=put (57259186099807233,20.); 
run; 

proc print data =m; 
quit; 

爲什麼這會給我輸出「57259186099807232」?

在此先感謝。 NV

+2

一旦以數字形式讀取它,它將不會被正確讀取。你需要改變你的流程,首先以字符的形式閱讀它。 – Reeza

回答

3

http://support.sas.com/documentation/...

的最大整數值,可以是「安全的」存儲在SAS(Windows系統)是9,007,199,254,740,992,比你的榜樣值越小。

隨着數值越大,您將不可避免地失去精確度;事實證明你的例子很好說明。

相關問題