2017-09-18 8 views
1

처리를 위해 bigint 데이터에 액세스해야합니다. 그래서 그것을 캐릭터로 변환하고 처리하려고합니다. 그러나 일부 bigint 숫자가 출력 테이블에 나타나지 않는 것으로 나타났습니다. 아래에 나열된 샘플 프로그램을 실행 해 보았습니다. 문제가 다시 발생했습니다.SAS - bigint를 char로 변환하는 데 사용 된 put 함수 - 잘못된 출력 생성

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

proc print data =m; 
quit; 

왜 출력이 "57259186099807232"입니까?

미리 감사드립니다. NV

+2

숫자로 읽은 후에는 올바르게 읽히지 않습니다. 처음에는 문자로 읽으려면 프로세스를 변경해야합니다. – Reeza

답변

3

는 '안전'(Windows 시스템) SAS에 저장된 예에있는 값보다 작은 9,007199254740,992입니다 수 있습니다 http://support.sas.com/documentation/...

가장 큰 정수 값을 참조하십시오.

큰 값을 지정하면 불가피하게 정밀도가 떨어집니다. 당신의 예제가 아주 잘 설명하는 사실.