So verwenden Sie MySQL Erklären Sie die Anweisung

So verwenden Sie MySQL Erklären Sie die Anweisung
Der Datenbankbenutzer muss verschiedene Arten von Abfragen für verschiedene Zwecke ausführen. Manchmal geben viele Abfragen die erwarteten Ergebnisse nicht zurück und der Datenbankadministrator muss den Grund herausfinden. MySQL enthält ein nützliches Tool namens namens ERKLÄREN um den Fehler zu diagnostizieren, für den die Abfrageanweisung nicht ordnungsgemäß funktioniert. Es wird zu Beginn einer Abfrageanweisung verwendet, um Informationen über die Ausführung der Abfrage bereitzustellen. Erklären Sie das Schlüsselwort können mit Auswahl, Einfügen, Aktualisieren, Löschen und Ersetzen von Anweisungen verwendet werden. So erklären Sie das Schlüsselwort mit Auswahlanweisungen, um Fehler der Abfrage zu diagnostizieren oder die Abfrage zu optimieren. In diesem Artikel wird angezeigt.

Erklären Sie die Keyword -Ausgabe für Auswahlabfrage:

Wenn das Schlüsselwort für Erklärung mit der Auswahlanweisung ausgeführt wird, gibt die Ausgabe von Erklärungen die folgenden Spalten zurück.

Spalte Beschreibung
Ausweis Es zeigt die Kennung der Abfrage an. Es repräsentiert die sequentielle Anzahl ausgewählter Abfragen.
Art auswählen Es zeigt den Typ der Auswahlabfrage an. Der Typ kann einfach, primär, Unterabfrage, Vereinigung usw. sein.
Tisch Es gibt den in der Abfrage verwendeten Tabellennamen an.
Partitionen Es zeigt die Partitionen der untersuchten partitionierten Tabelle an.
Typ Es gibt den Join -Typ oder den Zugriffstyp der Tabellen an.
PAY_KEYS Es zeigt die Schlüssel an, die von MySQL verwendet werden können, um Zeilen aus der Tabelle zu finden.
Taste Es zeigt den von MySQL verwendeten Index an.
Key_len Es zeigt die Länge des Index an, die vom Abfrageoptimierer verwendet werden.
Ref Es zeigt die Spalten oder Konstanten an, die mit dem in der Schlüsselspalte genannten Index verglichen werden
Reihen Es zeigt die Listen der untersuchten Datensätze an.
gefiltert Es zeigt den geschätzten Prozentsatz der Tabellenreihen an, die durch die Bedingung gefiltert werden.
extra Es zeigt die zusätzlichen Informationen zum Abfrageausführungsplan an.

Angenommen, Sie haben zwei verwandte Tabellen mit dem Namen Kunden Und Aufträge In der Datenbank benannt Unternehmen. Die erforderlichen SQL -Anweisungen zum Erstellen der Datenbank und die Tabellen mit Daten sind unten angegeben.

Datenbankfirma erstellen;
Firma nutzen;
Tischkunden erstellen (Kunden
ID int (5) Auto_increment Primärschlüssel,
Nennen Sie Varchar (50) NICHT NULL,
Mobile_no varchar (50) nicht null,
E -Mail varchar (50) nicht null) Engine = InnoDB;
Tischbestellungen erstellen (
ID varchar (20) Primärschlüssel,
order_date Datum,
customer_id int (5) nicht null,
Lieferung_Address varchar (50) nicht null,
Betrag int (11),
Ausländische Schlüssel (Customer_id) Referenzen Kunden (ID))
Motor = InnoDB;
Einfügen in Kundenwerte ein
(Null, 'Johnathan', '18477366643', John@Google Mail.com ')),
(Null, 'Musfiqur Rahman', '17839394985', '[email protected] ')),
(Null, 'Jimmy', '14993774655', 'Jimmy@Google Mail.com ');
In den Bestellwert einfügen
('1937747', '2020-01-02', 1, 'New Work', 1000),
('8633664', '2020-02-12', 3, 'Texas', 1500),
('4562777', '2020-02-05', 1, 'Kalifornien', 800),
('3434959', '2020-03-01', 2, 'New Work', 900),
('7887775', '2020-03-17', 3, 'Texas', 400);

Führen Sie die folgende Anweisung aus, um die aktuelle Datensatzliste von anzuzeigen Kunden Tisch.

Wählen Sie * von Kunden aus;

Führen Sie die folgende Anweisung aus, um die aktuelle Datensatzliste von anzuzeigen Aufträge Tisch.

Aus Bestellungen auswählen;

Verwendung einer einfachen Erklärung Anweisung:

Die folgende SQL -Anweisung gibt das Schlüsselwort der Erklärung einer einfachen Auswahlabfrage zurück, mit der alle Datensätze aus der Tabelle Kunden abgerufen werden.

Erklären Sie Select * von Kunden \ g;

Die folgende Ausgabe wird nach dem Ausführen der Anweisung angezeigt. Es ist eine einzelne Tischfrage und keine besonderen Klauseln wie Join, Union usw. werden in der Abfrage verwendet. Dafür der Wert von Art auswählen Ist EINFACH. Die Kundentabelle enthält nur drei Datensätze, deshalb der Wert von Reihen ist 3. Der Wert von Filtered beträgt 100%, da alle Aufzeichnungen der Tabelle abgerufen werden.

Verwendung von Erklärung in Select Abfrage mit Join:

Die folgende Erklärungserklärung wird in einer ausgewählten Abfrage von zwei Tabellen mit der Join -Klausel und einem Where -Zustand angewendet.

Erklären Sie ausgewählte Kunden.Name, Bestellungen.Order_date, Bestellungen.Menge
Von Kunden
Schließen Sie sich Bestellungen an (Kunden.ID = Bestellungen.Kundennummer)
Wo Kunden.name = 'Johnathan' \ g

Die folgende Ausgabe wird nach dem Ausführen der Anweisung angezeigt. Hier, Art auswählen ist einfach für beide Tabellen. Zwei Tabellen sind mit einer eins-zu-Viele-Beziehung verwandt. Der Hauptschlüssel von Kunden Tabelle wird als verwendet als ein fremder Schlüssel von Aufträge Tisch. Dafür der Wert von PAY_KEYS für die zweite Reihe ist Kundennummer. Der gefilterte Wert ist 33% für Kunden Tisch, weil "Johnathan" ist der erste Eintrag dieser Tabelle und muss nicht mehr suchen. Der gefilterte Wert von Aufträge Tisch ist 100% wegen aller Werte von Aufträge Tabelle erforderlich, um die Daten abzurufen.

In der Ausgabe der obigen Aussage ist eine Warnung vorhanden. Die folgende Anweisung wird verwendet, um die Abfrage anzuzeigen, die nach einer Änderung durch den Abfrageoptimierer ausgeführt wird, oder den Grund für den Fehler zu überprüfen, wenn ein Fehler nach der Ausführung der Abfrage auftritt.

Warnungen zeigen \ g

In der Abfrage gibt es keinen Fehler. Die Ausgabe zeigt die ausgeführte modifizierte Abfrage an.

Verwendung von Erklären, um den Fehler der Auswahlabfrage herauszufinden:

Die in der folgende Erklärung angewendete Abfrage enthält einen Fehler. Das von MySQL unterstützte Datumsformat ist ''Yjyy-mm-dd''. Aber im Hinblick auf diese Abfrage wird der Datumswert als 'angegebenDD / MM / JJJJ' das ist falsch.

Erklären Sie ausgewählte Kunden.Name, Bestellungen.Order_date, Bestellungen.Menge
Von Kunden
Schließen Sie sich Bestellungen an (Kunden.ID = Bestellungen.Kundennummer)
Wo Bestellungen.order_date = '10 -10-2020 '\ g

Nach dem Ausführen der Anweisung wird die folgende Ausgabe angezeigt. Es wird zwei Warnungen zeigen. Einer ist der Standard, der im vorherigen Beispiel erläutert wird, und ein anderer ist für den zuvor genannten Datumsfehler.

Führen Sie die Anweisung aus, um den Fehler zu sehen.

Warnungen zeigen \ g

Die Ausgabe zeigt den Fehler deutlich mit einer Fehlermeldung und Spaltenname an.

Verwendung von Erklärung in der Auswahlabfrage mit Union All Operator:

Union All Operator wird in der Abfrage ausgewählt, um alle übereinstimmenden Spaltenwerte mit Duplikaten aus den zugehörigen Tabellen abzurufen. In der folgenden Erklärung wird die Erklärung der Ausgabe von Gewerkschaftsanwaltsangebot zwischen den Betreibern angezeigt Kunden Und Aufträge Tische.

Erklären Sie die Auswahl von ID als ID
Von Kunden
Gewerkschaft alle
Wählen Sie Customer_id als ID aus
Aus Bestellungen \ g

Die folgende Ausgabe wird nach dem Ausführen der Anweisung angezeigt. Hier der Wert von Art auswählen Ist UNION für die zweite Reihe der Ausgabe und den Wert von Extra ist der Index.

Abschluss:

In diesem Artikel werden sehr einfache Verwendungen der Erklärungserklärung angezeigt. Diese Anweisung kann jedoch verwendet werden, um verschiedene komplizierte Datenbankprobleme zu lösen und die Datenbank für eine bessere Leistung zu optimieren.