आपको sku_size_part1
cast डालना होगा एक फ्लोट में।
यह आपकी क्वेरी को धीमा कर देगा, लेकिन यह काम करेगा:
$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");
यह क्वेरी को धीमा कर देगा, क्योंकि MySQL सॉर्टिंग करने के लिए इंडेक्स का उपयोग करने में सक्षम नहीं होगा, फ़ंक्शन का उपयोग करके इसे रोकता है।
एक बेहतर समाधान (यदि संभव हो तो) sku-size_part1
. को फिर से परिभाषित करना होगा दशमलव के रूप में (10,2)।
-- Make a backup first --
ALTER TABLE sku_data CHANGE sku_size_part1 DECIMAL(10,2);
(सुनिश्चित करें कि पहला पैरामीटर (10) और दूसरा पैरामीटर (2) सभी संभावित मानों को धारण करने के लिए पर्याप्त बड़ा है।)
देखें:http://dev.mysql .com/doc/refman/5.0/hi/cast-functions.html