यह काम करना चाहिए। क्या आपने यह दिखाने की कोशिश की है कि आपका CAST (पंक्ति AS DECIMAL) क्या पैदा करता है?
उस डेटा का उदाहरण पेस्ट करें जिसे आप सॉर्ट करने का प्रयास कर रहे हैं। हो सकता है कि आपके पास शून्य हो या संख्याएं जो दशमलव प्रकार में फ़िट नहीं हो सकतीं।
आप MySQL का किस संस्करण का उपयोग कर रहे हैं? शायद इसका कारण यह है (mysql सहायता से):