title: how can I preserve the digits following the decimal place in a money datatype?
body: <p>how can I preserve the digits following the decimal place in a money datatype?
  the problem I have is every time I try to cast the data to a string, I lose precision...</p>
  
  <p>for example:</p>
  
  <p>I am trying to use a money datatype to store phone numbers (it seems like the most optimal storage size) EDIT: storage size is a major issue for me (8 bytes for money datatype instead of 16+ bytes for varchar field)</p>
  
  <p>If I am storing 10 digits on the right side of the decimal place and 3-4 digits on the right of the decimal place as the extension, when I try to 'parse' the extension, I seem to lose anything more than 2 digits</p>
  
  <p>so a phone number like this: (305) 444-1234 ext 283 would be stored in a money datatype like this: 3054441234.283</p>
  
  <p>the problem I have is if I use a CAST(myMoneyValue as varchar(x)) then 3054441234.283 turns into 3054441234.28 </p>
  
  <p>can anyone help? </p>
  
  <p>EDIT2: let's pretend for a moment I didn't mention storing a phone number in there... let's say there was a reason I needed to concatenate a money datatype together with a varchar field... e.g. If I wanted to concatenate '$' + 0.1125 + ' / sqft.' - is there any way to preserve the .0025 portion of the money field? </p>