हां, MySQL ORDER BY (कुछ शर्तों के तहत) में कॉलम पर एक इंडेक्स का उपयोग कर सकता है। हालाँकि, MySQL मिश्रित ASC, DESC ऑर्डर द्वारा ( SELECT * FROM foo ORDER BY bar ASC, pants DESC
) के लिए एक इंडेक्स का उपयोग नहीं कर सकता है । आपकी क्वेरी और क्रिएट टेबल स्टेटमेंट साझा करने से हमें आपके प्रश्न का उत्तर देने में मदद मिलेगी।
ORDER को क्लाज के द्वारा कैसे अनुकूलित किया जाए, इस पर संकेत के लिए:
http://dev.mysql.com/doc/refman/5.1/en/order-by-optimization.html
2012-01-21 8:53 पूर्वाह्न संपादित करें
ORDER BY में मिश्रित ASC / DESC के साथ एक सूचकांक का उपयोग करने के बारे में मेरे बयान के स्रोत के बारे में प्रश्न थे। अनुकूलन दस्तावेज़ के आदेश से :
कुछ मामलों में, MySQL ORDER BY को हल करने के लिए अनुक्रमित का उपयोग नहीं कर सकता है, हालांकि यह अभी भी उन पंक्तियों को खोजने के लिए अनुक्रमित का उपयोग करता है जो WHERE क्लॉज से मेल खाते हैं। इन मामलों में निम्नलिखित शामिल हैं:
...
आप ASC और DESC मिलाते हैं:
सेलेक्ट * F1 से t1 ORDER द्वारा key_part1 DESC, key_part2 ASC;
...
इसके अलावा, DESC कीवर्ड क्रिएट इंडेक्स में अर्थहीन है
एक अनुक्रमणिका_col_name विनिर्देश ASC या DESC के साथ समाप्त हो सकता है। इन कीवर्ड्स को अनुक्रमणिका या अनुक्रमणित इंडेक्स वैल्यू स्टोरेज को निर्दिष्ट करने के लिए भविष्य के एक्सटेंशन के लिए अनुमति दी जाती है। वर्तमान में, उन्हें नजरअंदाज किया जाता है, लेकिन उन्हें नजरअंदाज कर दिया जाता है; सूचकांक मान हमेशा आरोही क्रम में संग्रहीत होते हैं।