Você precisa transmitir
sku_size_part1
em um flutuador. Isso diminuirá a velocidade da sua consulta, mas funcionará:
$brand = mysqli_real_escape_string($brand);
$result = $mysqli->query("SELECT DISTINCT sku_size_part1
FROM sku_data
WHERE sku_brandname = '$brand'
ORDER BY CAST(sku_size_part1 AS FLOAT) DESC");
Isso tornará a consulta mais lenta, porque o MySQL não poderá usar um índice para fazer a classificação, o uso de uma função impede isso.
Uma solução melhor (se possível) seria redefinir
sku-size_part1
como um decimal (10,2). -- Make a backup first --
ALTER TABLE sku_data CHANGE sku_size_part1 DECIMAL(10,2);
(Certifique-se de que o primeiro parâmetro (10) e o segundo parâmetro (2) sejam grandes o suficiente para conter todos os valores possíveis.)
Veja:http://dev.mysql .com/doc/refman/5.0/en/cast-functions.html