Tampaknya ada batas enam digit pada apa yang ditampilkan dari CLI (dan mungkin di tempat lain). Contoh yang Anda miliki adalah 1.12305e-06 yaitu 0,00000112305 yang akan ditampilkan sebagai 0,00000 - meskipun jelas itu bukan nol.
Jika Anda bersikeras menggunakan float atau double, Anda harus memaksanya menggunakan sesuatu seperti round(columnName,5)
untuk memaksa tampilan dalam nilai desimal. Jika tidak, mungkin beralih ke tipe data desimal.
Dari http://dev.mysql.com/ doc/refman/5.0/en/floating-point-types.html
Karena nilai floating-point adalah perkiraan dan tidak disimpan sebagai nilai eksak, upaya untuk memperlakukannya sebagai tepat dalam perbandingan dapat menimbulkan masalah. Mereka juga tunduk pada dependensi platform atau implementasi. Untuk informasi lebih lanjut, lihat Bagian C.5.5.8, “Masalah dengan Nilai Titik Mengambang ”
Lihat juga utas ini di forum mysql tentang masalah ini.