Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

एक इंडेक्स क्वेरी को वास्तव में धीमा क्यों कर सकता है?

क्योंकि आपको अभी भी इंडेक्स + डेटा फ़ाइल दोनों से सभी डेटा को पढ़ने की जरूरत है। चूंकि आप किसी where का उपयोग नहीं कर रहे हैं शर्त - आपके पास हमेशा क्वेरी प्लान होगा, जो सभी डेटा, पंक्ति दर पंक्ति एक्सेस करेगा और आप इसके साथ कुछ नहीं कर सकते।

यदि इस क्वेरी के लिए प्रदर्शन महत्वपूर्ण है और इसे अक्सर किया जाता है - मैं परिणामों को कुछ अस्थायी तालिका में कैश करने और इसे प्रति घंटा (दैनिक, आदि) अपडेट करने का सुझाव दूंगा।

यह धीमा क्यों हो जाता है:क्योंकि इंडेक्स में डेटा पहले से ही सॉर्ट किया जाता है और जब MySQL क्वेरी निष्पादन की लागत की गणना करता है तो यह सोचता है कि पहले से सॉर्ट किए गए डेटा का उपयोग करना बेहतर होगा, फिर इसे समूहित करें, फिर एग्रीगेट्स की गणना करें। लेकिन इस मामले में ऐसा नहीं है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डेलाइट सेविंग टाइम को ध्यान में रखते हुए रिपीटिंग डेट्स को कैसे स्टोर करें?

  2. LOAD DATA LOCAL INFILE त्रुटि देता है इस MySQL संस्करण के साथ प्रयुक्त कमांड की अनुमति नहीं है

  3. MySQL एक ही टेबल पर एकाधिक शामिल हों?

  4. इकाई ढांचे के लिए MySQL कनेक्शन का उपयोग नहीं कर सकता 6

  5. SQL सर्वर और MySQL में काम करने योग्य तालिकाओं की अधिकतम संख्या