Non capisco come sia possibile.
Se estraggo dal database MySql una serie di numeri formattati separando i decimali con un punto, l'ordinamento non funziona.
Ecco come vengono ordinati da phpMyAdmin, con questa query
SELECT *
FROM `sito_prodotti`
ORDER BY `prezzofinale` DESC
LIMIT 0 , 30
[list=1][*]353189.82[*]327.5[*]30.90[*]3.45 [*]20.70[*]10.78[/list=1]
Se davanti al 3.45 metto uno zero (03.45) l'ordinamento è corretto.
Il tipo di campo è varchar(14)