Inhaltsverzeichnis- 1. Zeigen Sie die Tabellen in der aktuellen Datenbank an
- 2. Erstellen Sie eine Tabelle
- 3. Zeigen Sie die angegebene Tabellenstruktur an
- 4. Tabelle löschen
- 5. Daten zur Tabelle hinzufügen
- 6. Daten in der Tabelle finden
- 6.1 Vollständige Spaltenabfrage
- 6.2 Abfragen durch Angabe von Spalten
- 6.3 Abfragefelder als Ausdrücke
- 6.4 Einer Spalte eine Konstante zuweisen
- 6.5 Einem Abfrageausdruck einen Alias zuweisen (as)
- 6.6 Verschieden
- 6.7 Sortieren der Abfrageergebnisse (order by)
- 6.8 Bedingte Abfrage (where)
- 6.9 Paginierungsabfrage (Limit)
- 7. Ändern Sie die Daten in der Tabelle
- 8. Daten aus der Tabelle löschen
Vorwort: - Der Bibliotheksname, Tabellenname, Spaltenname usw. dürfen nicht mit einem Schlüsselwort identisch sein. Wenn Sie ein Schlüsselwort als Namen verwenden müssen, können Sie den Namen mit Backticks in Anführungszeichen setzen.
- Bevor Sie die Tabelle bedienen, müssen Sie zunächst die Datenbank auswählen
Die folgenden Kommentare werden in MySQL unterstützt: - - Kommentarinhalt : Einzeiliger Kommentar. Beachten Sie, dass zwischen „–“ und dem Kommentarinhalt ein Leerzeichen stehen sollte.
- #Kommentarinhalt : einzeiliger Kommentar
- /*Kommentarinhalt*/ : mehrzeiliger Kommentar
Hinweis: Feld- oder Spaltenkommentare können mit dem Kommentarattribut hinzugefügt werden, beispielsweise in der Anweisung zur Tabellenerstellung mit
- In SQL können sowohl einfache als auch doppelte Anführungszeichen Zeichenfolgen darstellen.
1. Zeigen Sie die Tabellen in der aktuellen Datenbank an Grammatik: Beispiel: 
2. Erstellen Sie eine Tabelle Grammatik:
Tabelle erstellen [falls nicht vorhanden] Tabellenname (Spaltenname Spaltentyp, Spaltenname Spaltentyp, ..., Spaltenname Spaltentyp);
Beispiel: 
3. Zeigen Sie die angegebene Tabellenstruktur an Grammatik:
Beschreibung Tabellenname;
Beachten: desc ist die Abkürzung für „describe“. Sie können auch „describe table name“ verwenden, um die Tabellenstruktur anzuzeigen.
Beispiel: 
4. Tabelle löschen Grammatik:
Tabelle löschen [falls vorhanden] Tabellenname [, Tabellenname...];
Beispiel: 
Beachten: Auch das Löschen einer Tabelle ist ein sehr riskanter Vorgang, sogar gefährlicher als das Löschen einer Datenbank. Denn nach dem Löschen stürzt das Programm sofort ab und kann nicht rechtzeitig gerettet werden. Wenn Sie jedoch eine Tabelle löschen, zeigt das Programm die Anomalie möglicherweise nicht sofort an. Wenn das Problem also nicht rechtzeitig behoben werden kann, besteht ein größeres Risiko.
5. Daten zur Tabelle hinzufügen Grammatik:
einfügen [in] Tabellenname [(Spaltenname 1, Spaltenname 2, ..., Spaltenname n)] Werte (erste Zeile: Wert 1, Wert 2, ..., Wert n) [, ..., (n-te Zeile: Wert 1, Wert 2, ..., Wert n)]
Auffüllen: - Wenn der Spaltenname in der obigen Anweisung nicht geschrieben wird, bedeutet dies, dass alle Spalten Daten hinzufügen müssen
- Die in jede Zeile eingefügten Werte müssen der Reihenfolge der in jede Zeile einzufügenden Spaltennamen entsprechen.
- Wenn beim Einfügen eine Spalte nicht eingefügt wird, wird die Spalte auf den Standardwert NULL gesetzt
Beispiel 1: Einfügen einer Zeile mit allen Spalten 
Das Ergebnis ist:
Beispiel 2: Einfügen mehrerer Zeilen in eine vollständige Spalte 
Das Ergebnis ist: Ausweis | Name |
---|
1 | Zhang San | 2 | Li Si | 3 | Wang Wu |
Beispiel 3: Bestimmte einzufügende Spalten angeben 
Das Ergebnis ist: Ausweis | Name |
---|
1 | Zhang San | 2 | Li Si | 3 | Wang Wu | 4 | NULL |
Hinweis : Es wird allgemein angenommen, dass das gleichzeitige Einfügen mehrerer Datensätze mit einer Anweisung viel effizienter ist, als das Einfügen eines Datensatzes mit jeweils mehreren Anweisungen.
Wir wissen, dass MySQL ein Programm mit „Client-Server“-Struktur ist. Das vom Benutzer auf dem Client eingegebene SQL wird über das Netzwerk an den Server übertragen, und anschließend führt der Server bestimmte Vorgänge aus. Lassen Sie uns den Unterschied zwischen den beiden analysieren Eine Anweisung zum gleichzeitigen Einfügen mehrerer Datensätze: 
Mehrere Anweisungen, die jeweils einen Datensatz einfügen: 
Außerdem die Zugriffsgeschwindigkeit des Computers auf Register >>> die Zugriffsgeschwindigkeit auf den Speicher >>> die Zugriffsgeschwindigkeit auf IO-Geräte (die Datenübertragung im Netzwerk wird bei Computern als IO-Vorgang bezeichnet). Daher wird allgemein angenommen, dass das gleichzeitige Einfügen mehrerer Datensätze mit einer Anweisung viel effizienter ist, als das Einfügen eines Datensatzes mit jeweils mehreren Anweisungen. 6. Daten in der Tabelle finden Grammatik:
selstc [distinct] {* | Spaltenname 1 [, ..., Spaltenname n]} ab Tabellenname [wobei] [Sortieren nach Spaltenname 1 [ASC | DESC] [, ..., [Spaltenname n [ASC | DESC]]] Limit
Auffüllen: - Das Abfrageergebnis ist eine Struktur ähnlich einer „Tabelle“, aber diese Tabelle ist eine „temporäre Tabelle“, die nur für eine Weile im Speicher gespeichert wird und nach dem Drucken verschwindet. Sie wird nicht dauerhaft gespeichert.
-
select ändert die Daten auf der Festplatte nicht und hat insbesondere keinen Einfluss auf die Daten auf der Originalfestplatte des Servers.
Um die folgenden Beispiele zu erleichtern, wurde in der Datenbank die folgende Datentabelle erstellt: 
6.1 Vollständige Spaltenabfrage Beispiel: 
Beachten: Verwenden Sie die obige Anweisung in einer Produktionsumgebung mit Vorsicht, da die zurückgegebenen Daten sehr umfangreich sein können. Wenn die Daten sehr umfangreich sind, können sie die Netzwerkbandbreite des Servers beanspruchen und dazu führen, dass der Server nicht ordnungsgemäß funktioniert.
6.2 Abfragen durch Angabe von Spalten Beispiel: 
Beachten: Die Reihenfolge der angegebenen Spalten muss nicht mit der Reihenfolge übereinstimmen, in der die Tabelle definiert ist.
6.3 Abfragefelder als Ausdrücke Beispiel: 
Beachten: - Das obige Chinesisch+Mathe+Englisch ist ein Ausdruck und das Ergebnis ist die Addition ihrer Werte. Der Mehrwert wird jedoch nicht durch den Datentyp der ursprünglichen Spalte eingeschränkt.
- Der Ausdruck ist eine Operation zwischen Spalten und hat nichts mit Zeilen zu tun.
- Die Ausdrucksberechnung hat keinen Einfluss auf die Originaldaten und das Abfrageergebnis ist eine temporäre Tabelle.
6.4 Einer Spalte eine Konstante zuweisen Wenn Sie während select eine Konstante für eine Spalte angeben, wird die Konstante in jeder Zeile als Ausdruck angezeigt. Beispiel 1: 
Beispiel 2: 
6.5 Einem Abfrageausdruck einen Alias zuweisen (as) Beispiel: 
6.6 Verschieden Verwenden Sie das Schlüsselwort distinct , um doppelte Datensätze mit demselben Wert in einer Spalte zu entfernen. Beispiel 1: Deduplizierung einer Spalte 
Beispiel 2: Deduplizierung für mehrere Spalten (Anforderung: „distinct“ muss vor allen Spalten stehen und ein Datensatz wird nur dann als Duplikat betrachtet, wenn der Wert jeder Spalte in jeder Zeile mit dem Wert jeder Spalte in den anderen Zeilen übereinstimmt) 
6.7 Sortieren der Abfrageergebnisse (order by) Wenn unsere Abfrageoperation order by nicht enthält, ist die Reihenfolge der Abfrageergebnisse unbestimmt. Sie können den zu sortierenden Spaltennamen/Ausdruck [asc | desc] nach dem Tabellennamen in der Abfrageanweisung hinzufügen, um zu sortieren. Auffüllen: -
asc : Gibt die aufsteigende Reihenfolge an (von klein nach groß), ohne Angabe der Sortiermethode. Die Standardeinstellung ist asc -
desc : gibt die absteigende Reihenfolge an (von groß nach klein), was die Abkürzung für descending ist - Wenn beim Sortieren ein beliebiger Wert NULL ist, wird dieser als Minimalwert betrachtet.
- Unterstützt das Sortieren mehrerer Spalten, wobei die Prioritätssortierung in der Reihenfolge der zu sortierenden Spalten erfolgt und die zu sortierenden Spalten durch Kommas getrennt sind
- Wir kennen viele Sortieralgorithmen, wie Bubblesort, Selectionsort, Insertionsort, Shellsort, Heapsort, Quicksort, Mergesort usw. Unter ihnen ist Mergesort am besten für die Sortierung von MySQL-Daten geeignet , da MySQL-Daten auf der Festplatte gespeichert sind und die Lese- und Schreibvorgänge der Festplatte sehr teuer sind. Um die Anzahl der Lese- und Schreibvorgänge zu reduzieren, müssen wir eine Sortiermethode mit weniger Durchläufen finden. Zusätzlich zum anfänglichen Datenvolumen kann jedes Segment sortiert und dann gespeichert werden, da der Speicher möglicherweise nicht alles auf einmal speichern kann. Daher ist Mergesort für MySQL besser geeignet, um Daten zu sortieren.
Beispiel 1: Mathematik in aufsteigender Reihenfolge abfragen 
Beispiel 2 : Suche nach mathematischen Begriffen in absteigender Reihenfolge 
Beispiel 3: Sortieren mithilfe eines Ausdrucks oder Alias 
Beispiel 4: Mehrere Spalten umfassend sortieren, wobei vorausgesetzt wird, dass math am höchsten und chinese am niedrigsten ist 
6.8 Bedingte Abfrage (where) Bedingte Abfragen haben ein breites Anwendungsspektrum und sind nicht auf die oben genannten Verwendungen beschränkt. Beispielsweise können auch Anweisungen wie update und delete verwendet werden. Es führt eine Überprüfung in Form eines bedingten Where-Ausdrucks durch, was dem Durchlaufen der Abfrageergebnisse entspricht, wobei jeder Datensatz in die Bedingung eingefügt wird, die Datensätze beibehalten werden, die die Bedingungen erfüllen, und diejenigen eliminiert werden, die die Bedingungen nicht erfüllen. Bedingte Ausdrücke können folgende Operatoren verwenden: Vergleichsoperatoren oder logische Operatoren Vergleichsoperatoren: 
Logische Operatoren: Betreiber | veranschaulichen |
---|
Und | Ähnlich wie && in Java ist das Ergebnis nur dann wahr, wenn mehrere Bedingungen erfüllt sind | oder | Ähnlich wie || in Java ist das Ergebnis wahr, solange eine Bedingung erfüllt ist | nicht | Ähnlich wie ~ in Java ist das Ergebnis falsch, wenn die Bedingung erfüllt ist. |
Like entspricht oft Platzhaltern: Platzhalter | veranschaulichen |
---|
% | Gibt eine beliebige Anzahl von Zeichen an (einschließlich 0) | _ | Stellt jeden Charakter dar |
Auffüllen: -
where Bedingungen Ausdrücke verwenden können, aber keine Aliase -
and hat eine höhere Priorität als oder - Das Symbol „and“ kann auch die Funktion
between realisieren, aber between ist eigentlich eine Optimierung von SQL für diesen Bereichsabgleich. - Platzhalter: Ein Zeichen kann verwendet werden, um ein beliebiges anderes Zeichen oder mehrere andere Zeichen für die Fuzzy-Suche darzustellen.
- Beim Fuzzy-Matching handelt es sich um einen Zeichenfolgenvergleich. Wenn die in der aktuellen Spalte gespeicherte Zeichenfolge lang ist, verringert sich die Leistung daher erheblich.
- Für die Fuzzy-Übereinstimmung muss die Spalte nicht unbedingt ein Zeichenfolgetyp sein. Ein numerischer Typ ist beispielsweise ebenfalls zulässig. Der Fuzzy-Suchwert nach dem „like“ in der Anweisung muss jedoch in Anführungszeichen gesetzt werden.
- Bedingungen in SQL entsprechen eher „Filtern“ als „logischen Verzweigungen“.
Beispiel 1: Abfrage von Schülern, die in Englisch durchgefallen sind, und ihren Noten 
Beispiel 2: Abfrage von Studenten, deren Gesamtpunktzahl unter 200 liegt, und deren Gesamtpunktzahl (die folgende Methode schließt keine NULL-Werte ein) 
Beispiel 3: Abfrage der Gesamtpunktzahl der Schüler unter 200 und ihrer Gesamtpunktzahl, einschließlich der Schüler, deren Wert NULL ist (zur Vereinfachung der Anzeige habe ich proaktiv einen Schüler namens Zhuge Liang hinzugefügt, dessen Wert null ist). 
Beispiel 4: Abfrage von Schülern, deren Chinesisch-Ergebnisse zwischen 80 und 90 liegen, und deren Ergebnisse 
Beispiel 5: Abfrage der Schüler und Noten, deren Mathenoten 98, 73 und 65 sind 
Beispiel 6: Suche alle Studenten mit dem Nachnamen Sun 
Beispiel 7: Alle Studenten finden, deren Namen mit „德“ enden 
Beispiel 8: Abfrage von Studenten, deren Namen „悟“ enthalten 
Beispiel 9: Suche alle Studenten, deren Nachname Sun ist und deren Namen nur zwei Buchstaben haben 
Beispiel 10: Abfrage der Schüler, deren Mathenoten über 90 liegen, und ihrer Mathenoten 
6.9 Paginierungsabfrage (Limit) Wenn viele Abfrageergebnisse vorliegen, können Sie die Abfrageergebnisse auf mehrere Seiten aufteilen. Anwendungsszenario: Wenn wir auf Baidu nach etwas suchen, stellen wir fest, dass es viele Suchergebnisse gibt. Um nicht so viele Daten auf einmal zu erhalten, verwenden wir die Paging-Abfrage. 
Hinweis: Wenn die abzufragende Datenmenge groß ist, ist der Netzwerk-Overhead tatsächlich sehr groß, einschließlich: - Festplatten-E/A des Datenbankservers
- Netzwerk-E/A vom Datenbankclient zum Datenbankserver
Daher können Paging-Abfragen die Anzahl der Ergebnisse einer Abfrage begrenzen, um einen großen Netzwerk-Overhead zu vermeiden. Beispiel 1: limit n gibt nicht mehr als n Ergebniszeilen zurück (n stellt die maximale Anzahl von Abfrageergebnissen dar, standardmäßig beginnend bei Zeile 0). 
Beispiel 2: limit m , n gibt die Ergebnisse ab Zeile m und nicht mehr als n Zeilen zurück. 
Beispiel 3: limit n offset m gibt die Ergebnisse ab Zeile m und nicht mehr als n Zeilen zurück. 
Auffüllen: Die erste abgerufene Zeile ist Zeile 0, nicht Zeile 1. Das m in den Beispielen 2 und 3 oben steht für Zeile m oder Zeile m+1. 7. Ändern Sie die Daten in der Tabelle Grammatik:
Tabellennamen aktualisieren, Spaltennamen festlegen 1 = zu ändernder Wert [, ..., Spaltenname n = zu ändernder Wert] [wobei Bedingung] [Sortieren nach ...] [Grenze ...];
1
Auffüllen: -
update werden die Daten auf der Festplatte des Datenbankservers tatsächlich geändert - = im
update ist gleichbedeutend mit Zuweisung - Wenn das Datenergebnis NULL ist, ist das Ergebnis der darauf basierenden Operation immer noch NULL

8. Daten aus der Tabelle löschen Grammatik:
Löschen aus Tabellenname [wobei ...] [Sortieren nach ...] [Grenze ...]

Beachten: - Das Löschen muss mit Vorsicht erfolgen
-
delete from . Bei großen Datenmengen ist die Löschgeschwindigkeit sehr gering. Im Vergleich dazu ist das direkte Löschen der Tabelle schneller
Dies ist das Ende dieses Artikels über die grundlegenden Operationen von Datentabellen in MySQL-Datenbanken. Weitere grundlegende Operationen von MySQL-Datentabellen finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:- MySQL-Datenbankterminal – allgemeine Befehlscodes für Vorgänge
- Grundlegende Operationen und Projektbeispiele für die Python MySQL-Datenbank
- Aggregatabfrage- und Union-Abfragevorgänge für MySQL-Datenbanken
- MySQL-Datenbankoperationen und Datentypen
- MySQL-Lerndatenbankbetrieb DML ausführliche Erklärung für Anfänger
- MySQL lernen, Datenbanken und Tabellen-DDL zu erstellen und zu bedienen für Anfänger
- MySQL-Datenbank-Datentabellenoperationen
|