GRENZE Das Schlüsselwort Limit wird verwendet, um eine endliche Anzahl von Datensätzen abzurufen. Limit kann mit einem Parameter oder zwei Parametern verwendet werden. - Beschränken Sie [einen Parameter]
Dieser Parameter bestimmt die Anzahl der anzuzeigenden Datensätze. - Limit [erster Parameter, zweiter Parameter]
Hier gibt der erste Parameter die Anzahl der zu überspringenden Datensätze und der zweite Parameter die Anzahl der anzuzeigenden Datensätze an.Beispiel: Wählen Sie *ab Lehrerlimit 5;
Beispiel: Wählen Sie *ab Lehrerlimit 2,3;
GRUPPE NACH
Die GROUP BY-Klausel, die verwendet wird, um Zeilen zusammenzufassen, die dieselben Werte haben. Hauptsächlich GROUP BY-Klausel, die mit Aggregatfunktionen verwendet wird, um zusammenfassende Berichte aus der Datenbank zu erstellen.select dept_name, count(*)from Teachergroup by dept_name;
HAVING-KLAUSELN
Die Having-Klausel wird in Verbindung mit Aggregatfunktionen anstelle der Where-Klausel verwendet. Dies bedeutet nicht, dass Klausel- und Aggregatfunktionen in derselben Abfrage nicht möglich sind. Wir können die Where-Klausel und die Aggregatfunktion in derselben Abfrage verwenden.Hinweis: Die Having-Klausel wird auf eine Gruppe von Datensätzen angewendet, während die Where-Klausel auf jeden einzelnen Datensatz angewendet wird. Die Where- und Having-Klausel kann in derselben Abfrage verwendet werden.Syntax: Select function_name(column_name)From table_nameGroup by (column_name)Having (condition)
Beispiel: wählen Sie die Anzahl (Lehrer_ID) aus der Lehrergruppe nach Abteilungsname aus und haben Abteilungsname='it';
Wählen Sie Abteilungsname, Anzahl (Lehrer_ID) aus Lehrergruppe nach Abteilungsname mit Anzahl (Lehrer_ID)>2; SQL-VERBINDUNGEN
Abteilungstabelle Lehrertisch Beispiel: Schreiben Sie eine Abfrage, um den Abteilungsnamen mit ihrem Leiter anzuzeigen und wie viele Lehrer in der jeweiligen Abteilung arbeiten.;
TABELLE A und TABELLE B MITMACHEN Join gibt die Übereinstimmungswerte aus beiden Tabellen mit der jeweiligen ON-Bedingung zurück. Wählen Sie *from A JOIN BON A.no=B.no;
RECHTSVERBINDUNG SQL Right Join gibt alle Datensätze aus der rechten Tabelle und auch übereinstimmende Werte zurück. Wenn in einer anderen Tabelle keine übereinstimmenden Werte vorhanden sind, wird null zurückgegeben.Wählen Sie *From A RIGHT JOIN BON A.no=B.no;
LINKSVERBINDUNG SQL Left Join gibt alle Datensätze aus der linken Tabelle und übereinstimmende Werte zurück. Wenn es keine übereinstimmenden Werte in einer anderen Tabelle gibt, wird null zurückgegeben.Select *from A LEFT JOIN BON A.no=B.no;
ANSEHEN
Ansicht ist dasselbe wie eine Tabelle in einer Datenbank. Tabelle ist eine physische Entität, Ansicht jedoch nicht. Die Ansicht ist eine virtuelle Tabelle, die auf dem Ergebnissatz einer SQL-Abfrage basiert. Der Benutzer kann eine Ansicht erstellen, indem er SQL-Abfragen unter Verwendung einer oder mehrerer Tabellen schreibt, was bedeutet, dass die Ansicht Spalten/Felder/Attribute aus verschiedenen Tabellen enthalten kann. Syntax: erstelle Ansicht view_name asSelect column1,column2,….From table_nameWhere condition;
Beispiel: Ansicht erstellen view_student asSelect student_id,student_name,dept_nameFrom studentWhere student_id<10;
Wählen Sie *from view_student;
Der folgende Ausgabebildschirm zeigt, dass ein Benutzer SQL-Funktionen in der Ansicht ausführen kann, wenn die in der Ansicht vorhandenen Daten aus einer einzelnen Tabelle stammen. Dies gilt auch für WHERE und JOIN. # REPLACE VIEW In einer Ersetzungsansicht kann der Benutzer den Ansichtsnamen oder den Inhalt der Ansicht ändern, indem er die Abfrage innerhalb der Ansicht ändert.Syntax: Ansicht Ansichtsname erstellen oder ersetzen als Select column1,column2,……From studentWhere condition;
Beispiel: Create or Replace view view_student asSelect student_id,student_name,dept_name,classyearFrom studentWhere student_id between 15 and 35;
# DROP VIEW Der Benutzer kann die Ansicht mit dem Befehl DROP VIEW löschen.Syntax: Viewview_name löschen;
Beispiel: viewview_student löschen;
VERSCHACHTELTE ABFRAGE Abfrage innerhalb einer anderen Abfrage wird als verschachtelte Abfrage. bezeichnet Der Benutzer kann auf die äußere Abfrage und die innere Abfrage verweisen. Innere Abfrage mit dem Namen subquery . Die Unterabfrage kann zu einer einzeiligen Ausgabe oder einer mehrzeiligen Ausgabe führen. Der Benutzer kann eine Unterabfrage vor eine select- oder where-Klausel setzen. Syntax: SpaltenAus TabellennameWo-Bedingung auswählen In(SpaltennameAus TabellennameWo-Bedingung auswählen);Spaltenname auswählen =(SpaltennameAus TabellennameWo-Bedingung auswählen),SpaltenAus TabellennameWo-Bedingung auswählen;
Beispiel: Q1 Zeigen Sie Lehrernamen aus der Abteilung „IT“ an, deren Gehalt höher ist als das Durchschnittsgehalt der Abteilung „IT“. SQL SEQUENZ In MySQL wird das Schlüsselwort AUTO_INCREMENT verwendet, um eine Sequenz zu generieren. Es generiert eine Folge von numerischen Werten, die verwendet werden, um jeden Datensatz eindeutig zu identifizieren. Wenn dies auf eine Spalte angewendet wird, erhöht es den Spaltenwert um 1, während ein neuer Datensatz in die Tabelle eingefügt wird. Das Feld „Auto_increment“ sollte ein Schlüssel sein. Syntax: Tabelle Tabellenname erstellen(Spalte1 Datentyp AUTO_INCREMENT,Spalte2 Datentyp,…,Spalte1 Primärschlüssel);
Beispiel: Tabellenmuster erstellen (Muster_ID int auto_increment Primary Key, Mustername varchar(20),Anzahl int,Preis Float);
AUTO_INCREMENT nach Tabellenerstellung anwenden
Syntax: Tabelle ändern TabellennameÄndern SpaltenSpaltenname Datentyp Primärschlüssel auto_increment;
Beispiel: Tabelle ändern studentmodify columnstudent_id int auto_increment;
INDEX
Der Benutzer kann einen Index erstellen. Die Daten werden mit Hilfe des Index sehr schnell aus der Datenbank abgerufen. Der Benutzer kann den Index nicht sehen. Der Index wird nur zu Such- oder Abfragezwecken verwendet.Syntax Erzeuge Index index_nameOn table_name (column_name);
Beispiel: erstelle Index stud_indexon Student (student_name);
DROP-INDEX
Syntax: Ändern Sie die Tabelle TabellennameDrop Index Indexname;
Beispiel: Tabelle ändern studentdrop index stud_index;
Beispiele
Q1 Finden Sie das höchste Gehalt aus der Lehrertabelle auf Basis der Teacher_id heraus. Antwort: wähle die Teacher_ID aus der Teacher-Reihenfolge nach Teacher_ID desc Limit 1;// wie viele Datensätze angezeigt oder max(teacher_id) vom Lehrer ausgewählt werden sollen;
F2 Ermitteln Sie das zweithöchste Gehalt aus der Lehrertabelle auf Basis der Teacher_id. Antwort :wähle die Teacher_id aus der Teacher-Reihenfolge nach der Teacher_ID desc Limit 1,1; // 1 Datensatz überspringen, 1 Datensatz anzeigenQ3 Finden Sie das dritthöchste Gehalt aus der Lehrertabelle auf Basis der Teacher_id heraus. Antwort: wähle die Teacher_ID aus der Teacher-Reihenfolge nach Teacher_ID desc limit 2,1;Q3 Ermittle das n höchste Gehalt aus der Teacher-Tabelle auf Basis der Teacher_ID. Antwort: wähle die Teacher_id aus der Teacher-Reihenfolge nach der Teacher_ID desc limit n-1,1;