उस क्वेरी को सुधारने के लिए नियमित अनुक्रमण का उपयोग नहीं किया जा सकता है। MySQL इंडेक्स बी-पेड़ हैं, जिसका अर्थ है कि वे इंडेक्स किए गए कॉलम का उपसर्ग बहुत जल्दी ढूंढ सकते हैं। लेकिन चूंकि आपका LIKE
क्वेरी में %
है शुरुआत में, खोजने के लिए कोई अनूठा उपसर्ग नहीं है। इसलिए प्रत्येक पंक्ति को पैटर्न से मिलान करने के लिए स्कैन करना होगा।
हालाँकि, MySQL पूर्ण-पाठ खोज का भी समर्थन करता है। यह कॉलम में सभी शब्दों का एक इंडेक्स बनाता है, और यह इन शब्दों को जल्दी से ढूंढ सकता है। दस्तावेज देखें विवरण के लिए।
यदि आप LIMIT 10
. का उपयोग करते हैं , जैसे ही इसे शर्तों को पूरा करने वाली पहली 10 पंक्तियाँ मिलती हैं, यह स्कैनिंग बंद कर देगा। जब तक आप ORDER BY
. का भी उपयोग नहीं करते हैं -- फिर उसे सभी पंक्तियों को खोजना होगा ताकि वह पहले 10 को चुनने से पहले उन्हें क्रमबद्ध कर सके।