Hi again Mehdi,
I premise that I'm almost ok with the manual solution of inserting the right values from the database, but for the sake of research I guess it's could be good to understand this strange behaviour.
As a first thing I've deleted the previous ranking field, in some way it was "corrupted" since whenever I was trying to change the storage method in standard or custom mode... this was never be saved.
Now I've created another field, at the moment it's a text field and the storage method it's like Mehdi suggested, the problem though remains the same
20-19-2-5, is an example of the order I'm getting now
and this is the debug query
SELECT t0.id as pid, t0.pk as pk, t0.pkb as pkb,t0.cck as cck,
t0.storage_location as loc,tt.id AS type_id, tt.alias AS type_alias
FROM `#__cck_core` AS t0
LEFT JOIN `#__content` AS t1 ON t1.id = t0.pk
LEFT JOIN `#__cck_core_types` AS tt ON tt.name = t0.cck
WHERE t1.state = 1 AND t1.access IN (1,1,2,3) AND ( t1.publish_up =
'0000-00-00 00:00:00' OR t1.publish_up <= '2013-07-30 08:36:15' ) AND
( t1.publish_down = '0000-00-00 00:00:00' OR t1.publish_down >=
'2013-07-30 08:36:15' ) AND t0.cck = 'cloud_storage_provider'
GROUP BY t0.pk
ORDER BY t1.ordering ASC
0.011 seconds (+0.011); 13.32 MB (+13.316) - afterSearch [Cache=OFF]
0.109 seconds (+0.098); 15.67 MB (+2.356) - afterRender [Cache=OFF]
I'm very curious at the moment, I'll try once again to alter the table and change the field as a number.
cheers :)