SQL Express 데이터베이스에 십진수 (18, 2) 필드가 있습니다.십진수 값이 반올림되지 않았습니다.
이제 일부 집계가 발생하면 결과가 나타납니다. 나는 때때로 1 센트를 잃는다.
결과가 192,84 유로라고 가정하면 내 프로그램은 192,83 유로를 표시하지만 계산기를 사용하여 집계를 만들면 192,84가 표시됩니다.
왜 이런 일이 벌어 질 수 있는지 생각해보십시오. 형식 문자열 통화로 DevExpress 컨트롤을 사용합니다. 필드를 10 진수 (18,3)로 변경하는 아이디어가 있습니다. 어떻게 생각하니?
감사합니다
값이 처음으로 쇼 suming된다 [편집] 이제
(예 : 1.074,65 등 1.074,64) 나는 그것이 내림하지만 올바른가 볼 수 있다고 말했다 제 2 끝, 65.
예 : 194,61 + 182,20 + 697,84 = 1.074,65이지만, 1.074,64로 내려갑니다. 이 값을 다시 얻으려고하면 올바르게 표시됩니다. ...
언제나 반올림해야한다고 생각합니까? 10 진수 값에 대한 가장 효율적인 반올림 방법은 무엇입니까?
일부 코드 :SumingTotal = AnObject.ListOfAType.Sum(p => p.DecimalProperty) +
(DecimalValue1 + DecimalValue2);
이 1.074,65으로 동일하지만 난이 값을 표시하는 환경에서 얻을 경우 1.074,64를 표시하고 데이터베이스에 저장 일부 후에 다시 확인하려고 다시 계산해야 양식에 입력하는 동안 제대로 표시되지만 데이터베이스에 이미 잘못되었습니다.
감사합니다.
나는 십진법 (18, 2)의 유형을 가진 데이타베이스 분야에 그것을 저장하고있다 나는 그것을 얻지 않는다. –
흠. 합산되지 않는 정확한 목록을 보여줄 수 있습니까? – smirkingman
몇 가지 코드를 게시하려고 시도합니다 .... –