Sayangnya (untuk kasus Anda) perilaku LEAST diubah di MySQL 5.0.13 (http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#function_least ) - digunakan untuk mengembalikan NULL hanya jika semua argumen adalah NULL.
Perubahan ini bahkan dilaporkan sebagai bug:http://bugs.mysql.com/ bug.php?id=15610 Tetapi perbaikannya hanya pada dokumentasi MySQL, menjelaskan perilaku baru dan kerusakan kompatibilitas.
Solusi Anda adalah salah satu solusi yang disarankan. Yang lain dapat menggunakan operator IF:
SELECT IF(Col1 IS NULL OR Col2 IS NULL, COALESCE(Col1, Col2), LEAST(Col1,Col2))