| 
	
 | 
 Posted by Erland Sommarskog on 06/18/28 11:41 
figital (mharen@gmail.com) writes: 
> I agree with Doug. We usually use reals to hold our percentages. In the 
> db, a 5.5% discount would look like .055......... 
>  
> Because, in effect, that's really what 5.5% represents. 
 
In our shop we can never make up our mind... So some of the percentages 
are stored as aba_percent, others as aba_fraction and yet others as float. 
aba_percent is just an alias for "float" but the name implies that it is 
a percentage, and that you should divide with 100 before use. aba_fraction 
is float, and constrained to be between 0 and 1. Multiply with 100 before 
display, and divide by 100 before storing. Those that just float, can 
hold values outside the range [0..1]. (I have considered a constraint 
to keep them between -10 and 10, but that is a risky business, as one 
day 1200% may be a correct value.) 
 
The problem with storing percentages as fraction, is that some developers 
make the entry forms a carbon of the data model, so they don't display 
the fraction as a percentage, but as a fraction... 
 
 
--  
Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se 
 
Books Online for SQL Server 2005 at 
http://www.microsoft.com/technet/prodtechnol/sql/2005/downloads/books.mspx 
Books Online for SQL Server 2000 at 
http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx
 
  
Navigation:
[Reply to this message] 
 |