Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL EXPLAIN कीवर्ड क्वेरी निष्पादित करता है या केवल व्याख्या करता है

EXPLAIN: क्वेरी निष्पादन योजना दिखाता है, क्वेरी नहीं चलाता

EXPLAIN कीवर्ड बताता है कि MySQL क्वेरी को कैसे निष्पादित करेगा। पहले टेबल बनाएं:

mysql> create table DemoTable1375 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(20), INDEX FIRST_INDEX(FirstName) ); Query OK, 0 rows affected (0.73 sec)

रिकॉर्ड डालें:

mysql> insert into DemoTable1375(FirstName) values('Chris'); Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable1375(FirstName) values('Bob'); Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable1375(FirstName) values('Sam'); Query OK, 1 row affected (1.06 sec)
mysql> insert into DemoTable1375(FirstName) values('David'); Query OK, 1 row affected (0.09 sec)

सभी रिकॉर्ड देखें:

mysql> select * from DemoTable1375;

आउटपुट:

+----+-----------+ | Id | FirstName | +----+-----------+ | 2  | Bob       | | 1  | Chris     | | 4  | David     | | 3  | Sam       | +----+-----------+ 4 rows in set (0.00 sec)

MySQL EXPLAIN का उपयोग:

mysql> explain select * from DemoTable1375;

आउटपुट:

+----+-------------+---------------+------------+-------+---------------+-------------+---------+------+------+----------+-------------+ | id | select_type | table         | partitions | type  | possible_keys | key         | key_len | ref  | rows | filtered | Extra       | +----+-------------+---------------+------------+-------+---------------+-------------+---------+------+------+----------+-------------+ | 1  | SIMPLE      | DemoTable1375 | NULL       | index | NULL          | FIRST_INDEX | 63      | NULL | 4    | 100.00   | Using index | +----+-------------+---------------+------------+-------+---------------+-------------+---------+------+------+----------+-------------+ 1 row in set, 1 warning (0.03 sec)

व्याख्या: EXPLAIN क्वेरी को **निष्पादित नहीं करता**। यह केवल क्वेरी निष्पादन योजना दिखाता है: किस टेबल को एक्सेस किया जाता है, किस इंडेक्स का उपयोग होता है, कितनी पंक्तियों की जांच होती है, जॉइन प्रकार आदि। "Using index" का अर्थ है कवरिंग इंडेक्स का उपयोग हुआ (टेबल एक्सेस की आवश्यकता नहीं)। यह प्रदर्शन ट्यूनिंग के लिए महत्वपूर्ण टूल है।

  1. - MySQL EXPLAIN कीवर्ड के साथ क्वेरी जानकारी प्राप्त करें

    परिचय MySQL का EXPLAIN कीवर्ड क्वेरी निष्पादन योजना (execution plan) दिखाता है, जिससे आप समझ सकते हैं कि MySQL आपकी क्वेरी को कैसे निष्पादित करेगा। यह प्रदर्शन ट्यूनिंग और इंडेक्स उपयोग विश्लेषण के लिए आवश्यक उपकरण है। उदाहरण: टेबल और इंडेक्स बनाना ); Query OK, 0 rows affected (0.94 sec) CREATE

  1. - MySQL में टेबल A की तुलना में टेबल B में नहीं होने पर टेबल C में डेटा डालें

    समाधान टेबल A और B पर LEFT JOIN का उपयोग करें, जहां B में मेल नहीं खाता वहां के रिकॉर्ड टेबल C में डालें। उदाहरण टेबल A (demo20): INSERT INTO demo20 VALUES (100,John), (101,Bob), (102,Mike), (103,Carol); टेबल B (demo21): INSERT INTO demo21 VALUES (100,Sam), (101,Adam), (133,Bob), (145,David); ट

  1. - MySQL में आरक्षित कीवर्ड (जैसे groups) से टेबल बनाने पर सिंटैक्स एरर और समाधान

    समस्या groups MySQL आरक्षित कीवर्ड है। बिना बैकटिक्स के टेबल बनाने पर एरर: create table groups (id int, name varchar(40)); ERROR 1064 (42000): You have an error in your SQL syntax near groups (id int, name varchar(40)) at line 1 समाधान: बैकटिक्स (`) का उपयोग create table `groups` (id int, name v