Q:

mysql sum() does not give correct decimal value

I have 9 entries in a varchar column all at 2 decimal places.  When i go to add them with sum() rather than the right answer it gives me at multiple decimal places off by a tiny bit.  Why would this happen? 
Select sum(atotal) AS itemstotal FROM mytable

This ill give me 248.299999999998 or something like that rather then the 248.3 that i calculate when adding my items

A:

Select cast(sum(atotal) as decimal(12,2)) AS itemstotal FROM mytable

