SQL
EXPLAIN और DESCRIBE
खोज…
विवरण टैबलेन;
DESCRIBE
और EXPLAIN
पर्यायवाची हैं। एक टैबलेन पर DESCRIBE
कॉलम की परिभाषा देता है।
DESCRIBE tablename;
निर्गत परिणाम:
COLUMN_NAME COLUMN_TYPE IS_NULLABLE COLUMN_KEY COLUMN_DEFAULT EXTRA
id int(11) NO PRI 0 auto_increment
test varchar(255) YES (null)
यहां आपको कॉलम के नाम दिखाई देते हैं, इसके बाद कॉलम टाइप होता है। यह दिखाता है कि क्या स्तंभ में null
की अनुमति है और यदि स्तंभ किसी इंडेक्स का उपयोग करता है। डिफ़ॉल्ट मान भी प्रदर्शित होता है और यदि तालिका में कोई विशेष व्यवहार जैसे auto_increment
।
क्वेरी का चयन करें
किसी select
क्वेरी के Explain
आपको दिखाता है कि क्वेरी को कैसे निष्पादित किया जाएगा। इस तरह से आप देख सकते हैं कि क्वेरी इंडेक्स का उपयोग करती है या यदि आप इंडेक्स जोड़कर अपनी क्वेरी को ऑप्टिमाइज़ कर सकते हैं।
उदाहरण क्वेरी:
explain select * from user join data on user.test = data.fk_user;
उदाहरण परिणाम:
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE user index test test 5 (null) 1 Using where; Using index
1 SIMPLE data ref fk_user fk_user 5 user.test 1 (null)
यदि आप एक सूचकांक का उपयोग किया गया था, तो type
। यदि possible_keys
हो तो निष्पादन योजना विभिन्न स्तंभों में से कोई भी मौजूद नहीं है, तो कॉलम में देख सकते हैं। key
आपको एक्यूट यूज्ड इंडेक्स बताती है। key_len
आपको एक इंडेक्स आइटम के लिए बाइट्स में आकार दिखाता है। यह मान जितना कम हो उतना ही इंडेक्स आइटम उसी मेमोरी साइज में फिट होता है जिसे वे तेजी से प्रोसेस कर सकते हैं। rows
आपको यह पता चलता है कि क्वेरी को स्कैन करने के लिए अपेक्षित पंक्तियों की संख्या, कम बेहतर है।