Grundlegendes Tutorial zum Hinzufügen, Löschen, Ändern und Abfragen von MySQL-Tabellen

Grundlegendes Tutorial zum Hinzufügen, Löschen, Ändern und Abfragen von MySQL-Tabellen

1. Erstellen

einfügen in [Tabellenname] (Feld1, Feld2, …) Wert (Wert1, Wert2, …);

füge Werte in [Tabellenname] (Feld 1, Feld 2, ....) ein
(Wert1, ...),
(Wert2, ...),
(Wert3, ...);

Beispiel:

Erstellen Sie eine Notentabelle für Schüler

CREATE TABLE exam_result (
 Ich würde INT,
 Name VARCHAR(20),
 chinesische DEZIMAL(3,1),
 math DECIMAL(3,1),
 englisch DECIMAL(3,1)
);

1.1 Einzelne Zeilendaten + vollständige Spalteneinfügung

-- Fügt zwei Datensätze ein. Die Nummer der Werteliste muss mit der Anzahl und Reihenfolge der Spalten in der Definitionstabelle übereinstimmen. insert into exam_result value (1, 'tom', 68, 98, 56); 
in exam_result-Wert einfügen (2, „jum“, 87,5, 78, 77); 

Jedes Mal, wenn Daten eingefügt werden, handelt es sich um einen Datensatz mit mehreren Spalten~~

Anzahl und Datentyp der Spalten sollten der Struktur der Tabelle entsprechen.

Wenn die angegebene Spalte vor dem Wert weggelassen wird, wird standardmäßig die gesamte Spalte eingefügt.

1.2 Mehrere Datenzeilen + angegebene Spalten

- Fügt zwei Datensätze ein. Die Nummer der Werteliste muss mit der Anzahl und Reihenfolge der angegebenen Spalten übereinstimmen. INSERT INTO exam_result (id,name, chinese, math, english) VALUES
 (1,'tom', 67, 98, 56),
 (2,'jum', 87,5, 78, 77),
 (3,'lim', 88, 98,5, 90),
 (4,'tim', 82, 84, 67),
 (5,'huy', 55,5, 85, 45),
 (6,'Sonne', 70, 73, 78,5),
 (7,'ming', 75, 65, 30);

2. Abrufen

2.1 Vollständige Spaltenabfrage

Wählen Sie * aus [Tabellenname];

* stellt ein Platzhalterzeichen dar, d. h. alle Spalten werden durchsucht.

2.2 Abfrage nach angegebener Spalte

Wählen Sie [Abfragespalte angeben] aus [Tabellenname] aus.

2.3 Abfragefelder als Ausdrücke

Wählen Sie [Feldausdruck] aus [Tabellenname];

2.4 Aliase

Wähle Spalte [als] [Spaltenname] aus [Tabellenname];

2.5 Deduplizierung: DISTINCT

Verwenden Sie das Schlüsselwort „distinct“, um doppelte Daten aus einer Spalte zu entfernen

--98 Punkte, wiederholte Auswahl von Mathematik aus den Prüfungsergebnissen;
+------+
|Mathe|
+------+
| 98,0 |
| 78,0 |
| 98,0 |
| 84,0 |
| 85,0 |
| 73,0 |
| 65,0 |
+------+

- Entfernen Sie doppelte Ergebnisse, indem Sie unterschiedliche Mathematik aus den Prüfungsergebnissen auswählen.
+------+
|Mathe|
+------+
| 98,0 |
| 78,0 |
| 84,0 |
| 85,0 |
| 73,0 |
| 65,0 |
+------+

2.6 Sortierung: ORDER BY

Wählen Sie * aus [Tabellenname], sortiert nach [Sortierfeld];

Verwenden Sie „order by“, um eine Spalte anzugeben, nach der sortiert werden soll. Die Standardsortierung erfolgt in aufsteigender Reihenfolge.

Das explizite Hinzufügen von desc sortiert in absteigender Reihenfolge. Das Verwenden von asc sortiert ebenfalls in aufsteigender Reihenfolge.

Wählen Sie Namen und Mathematik aus den Prüfungsergebnissen aus, sortiert nach Mathematik absteigend.
+------+------+
| Name | Mathematik |
+------+------+
| tom | 98,0 |
| lim | 98,0 |
| 85,0 |
| tim | 84,0 |
| 78,0 |
| Sonne | 73,0 |
| ming | 65,0 |
+------+------+

NULL-Daten werden als kleiner als jeder Wert sortiert und erscheinen oben in aufsteigender Reihenfolge und unten in absteigender Reihenfolge.

Die Sortierung kann auch durch Angabe mehrerer Spalten erfolgen

Wählen Sie * aus den Prüfungsergebnissen, sortiert nach mathematischer Beschreibung, chinesischer Beschreibung;
+------+------+---------+------+---------+
| ID | Name | Chinesisch | Mathematik | Englisch |
+------+------+---------+------+---------+
| 3 | lim | 88,0 | 98,0 | 90,0 |
| 1 | tom | 67,0 | 98,0 | 56,0 |
| 5 | Leute | 55,5 | 85,0 | 45,0 |
| 4 | Zeit | 82,0 | 84,0 | 67,0 |
| 2 | jum | 87,5 | 78,0 | 77,0 |
| 6 | Sonne | 70,0 | 73,0 | 78,5 |
| 7 | ming | 75,0 | 65,0 | 30,0 |
+------+------+---------+------+---------+

Wenn beim Sortieren mehrerer Spalten die Größe der ersten Spalte nicht erkennbar ist, sortieren Sie nach der zweiten Spalte.

2.7 Bedingte Abfrage: WHERE

Vergleichsoperatoren

Betreiber veranschaulichen
>, >=, <, <= Größer als, Größer als oder gleich, Kleiner als, Kleiner als oder gleich
= Gleich, NULL ist nicht sicher, beispielsweise ist das Ergebnis von NULL = NULL NULL
<=> Gleich, NULL-sicher, zum Beispiel NULL <=> NULL ist TRUE(1)
!=, <> Ungleich
ZWISCHEN a0 UND a1 Bereichsübereinstimmung, [a0, a1], wenn a0 <= Wert <= a1, gibt TRUE (1) zurück
IN (Option, …) Wenn eine der Optionen zutrifft, wird TRUE (1) zurückgegeben.
IST NULL ist NULL
IST NICHT NULL Nicht NULL
WIE Fuzzy-Matching. % steht für eine beliebige Anzahl (einschließlich 0) beliebiger Zeichen; _ steht für ein beliebiges Zeichen

Logische Operatoren:

Betreiber veranschaulichen
UND Mehrere Bedingungen müssen alle WAHR(1) sein, damit das Ergebnis WAHR(1) ist
ODER Wenn eine der Bedingungen WAHR(1) ist, ist das Ergebnis WAHR(1)
NICHT Die Bedingung ist WAHR (1) und das Ergebnis ist FALSCH (0).

Beachten:

  • Spaltenaliase können nicht in where~~ verwendet werden.
  • UND hat eine höhere Priorität als ODER. Bei gemeinsamer Verwendung sind Klammern () erforderlich, um den Prioritätsteil einzuschließen.

Beispiel:

Grundlegende Abfrage:

- Abfrage von Schülern, die in Englisch durchgefallen sind, und ihren Englischnoten (< 60)
Wählen Sie Namen, Englisch aus Prüfungsergebnis, wobei Englisch < 60 ist;

- Abfrage für Studenten, deren Chinesisch-Noten besser sind als ihre Englisch-Noten. Wählen Sie „Name, Chinesisch, Englisch“ aus „Prüfungsergebnis“, wobei „Chinesisch > Englisch“ gilt.

- Abfrage für Studenten, deren Gesamtpunktzahl unter 200 liegt. Wählen Sie „Name“, „Chinesisch + Mathematik + Englisch als Gesamtpunktzahl“ aus „Prüfungsergebnis“, wobei „Chinesisch + Mathematik + Englisch < 200“ ist.

UND und ODER:

- Abfrage für Studenten, deren Chinesisch-Ergebnisse über 80 und deren Englisch-Ergebnisse über 80 liegen. select * from exam_result where chinese > 80 and english > 80;

- Abfrage für Studenten, deren Chinesisch-Ergebnisse höher als 80 Punkte oder deren Englisch-Ergebnisse höher als 80 Punkte sind. select * from exam_result where chinese > 80 or english > 80;

In Bezug auf die Prioritätsfrage hat und Vorrang vor oder.

Bereichsabfrage:

1.ZWISCHEN … UND …

-- Fragen Sie die Studenten ab, deren Chinesisch-Ergebnisse zwischen [80, 90] liegen, und wählen Sie ihre Chinesisch-Ergebnisse aus. Wählen Sie „Name, Chinesisch“ aus „Prüfungsergebnis“, wobei „Chinesisch ZWISCHEN 80 UND 90“ steht.

Wählen Sie den Namen „Chinesisch“ aus den Prüfungsergebnissen, wobei „Chinesisch“ >= 80 und „Chinesisch“ <= 90 ist.

IN

 -- Fragen Sie die Studenten ab, deren Mathematik-Noten 58, 59, 98 oder 99 sind, und ihre Mathematik-Noten. Wählen Sie „Name, Mathematik“ aus „Prüfungsergebnis“, wobei „Mathe in (58, 59, 98, 99)“ ist.

Fuzzy-Abfrage: LIKE

Wählen Sie einen Namen aus den Prüfungsergebnissen, wobei der Name beispielsweise „t%“ lautet.
+------+
| Name |
+------+
|
| tim |
+------+

% ist ein Platzhalterzeichen, mit dem beliebig viele Zeichen ersetzt werden können.

t% Suchen Sie die Zeichenfolge, die mit t beginnt

%t findet Zeichenfolgen, die mit t enden

%t% findet die Wörter, die t enthalten

Neben %, gibt es auch _ (_ kann nur ein Zeichen darstellen~)

Wählen Sie einen Namen aus den Prüfungsergebnissen, wobei der Name beispielsweise „t__“ lautet.
+------+
| Name |
+------+
|
| tim |
+------+

Platzhalter können auch für unscharfe Abfragen von Zahlen verwendet werden

Wählen Sie Namen, Chinesisch aus Prüfungsergebnis, wobei Chinesisch wie „%8%“ ist;
+------+---------+
| Name | Chinesisch |
+------+---------+
| jum | 87,5 |
| lim | 88,0 |
| tim | 82,0 |
+------+---------+

Beachten:

Fuzzy-Abfragen scheinen nützlicher zu sein, aber die tatsächliche Ausführungseffizienz ist gering

NULL-Abfrage: IS [NOT] NULL

 Wählen Sie den Namen aus den Prüfungsergebnissen, wobei die ID ungleich null ist.

2.8 Paginierte Abfrage: LIMIT

-- Ursprüngliche Datentabelle, wähle * aus exam_result;
+------+------+---------+------+---------+
| ID | Name | Chinesisch | Mathematik | Englisch |
+------+------+---------+------+---------+
| 1 | tom | 67,0 | 98,0 | 56,0 |
| 2 | jum | 87,5 | 78,0 | 77,0 |
| 3 | lim | 88,0 | 98,0 | 90,0 |
| 4 | Zeit | 82,0 | 84,0 | 67,0 |
| 5 | Leute | 55,5 | 85,0 | 45,0 |
| 6 | Sonne | 70,0 | 73,0 | 78,5 |
| 7 | ming | 75,0 | 65,0 | 30,0 |
+------+------+---------+------+---------+

-- Die ersten drei Datensätze wählen * aus exam_result limit 3;
+------+------+---------+------+---------+
| ID | Name | Chinesisch | Mathematik | Englisch |
+------+------+---------+------+---------+
| 1 | tom | 67,0 | 98,0 | 56,0 |
| 2 | jum | 87,5 | 78,0 | 77,0 |
| 3 | lim | 88,0 | 98,0 | 90,0 |
+------+------+---------+------+---------+

– Drei Datensätze, beginnend mit dem dritten, select * from exam_result limit 3 offset 3;
+------+------+---------+------+---------+
| ID | Name | Chinesisch | Mathematik | Englisch |
+------+------+---------+------+---------+
| 4 | Zeit | 82,0 | 84,0 | 67,0 |
| 5 | Leute | 55,5 | 85,0 | 45,0 |
| 6 | Sonne | 70,0 | 73,0 | 78,5 |
+------+------+---------+------+---------+

Offset gibt die Anzahl der Einträge an, bei denen die Suche beginnen soll . Offset kann weggelassen werden.

wähle * aus Prüfungsergebnislimit 3, 4;
+------+------+---------+------+---------+
| ID | Name | Chinesisch | Mathematik | Englisch |
+------+------+---------+------+---------+
| 4 | Zeit | 82,0 | 84,0 | 67,0 |
| 5 | Leute | 55,5 | 85,0 | 45,0 |
| 6 | Sonne | 70,0 | 73,0 | 78,5 |
| 7 | ming | 75,0 | 65,0 | 30,0 |
+------+------+---------+------+---------+

3. Aktualisierung

- Zu den Mathenoten der drei schlechtesten Schüler werden insgesamt 30 Punkte addiert

Aktualisiere Prüfungsergebnissatz Mathematik = Mathematik + 30, sortiere nach Chinesisch + Mathematik + Englisch, Limit 3;

aktualisieren, ohne Bedingungen hinzuzufügen, kann es auf alle angewendet werden

4. Löschen

löschen aus [Tabellenname];
-- Löschen Sie Mings Testergebnis, löschen Sie aus exam_result, wobei Name = „ming“ ist;

-- Löschen Sie die gesamte Tabelle, löschen Sie aus exam_result;

Wenn keine Bedingungen angegeben sind, wird die gesamte Tabelle gelöscht (dies unterscheidet sich vom Drop-Befehl).

Nach dem Löschen ist die Tabelle null und nach dem Löschen existiert die Tabelle nicht.

5. Häufig hinzugefügt

-- Einzelne Zeile einfügen, einfügen in [Tabellenname] (Feld 1, …, Feld N) Werte (Wert1, …, Wert N);
-- in [Tabellenname](Feld 1, ..., Feld N) Werte einfügen
(Wert1, ...),
(Wert2, ...),
(Wert3, ...);

Abfrage

--Vollständige Tabellenabfrage select * from [Tabellenname];
--Geben Sie die Spaltenabfrage an: select [Spaltenname 1, Spaltenname 2, ...] from [Tabellenname];
--Abfrageausdrucksfeld select [Ausdruck 1, Ausdruck 2,...] aus [Tabellenname];
--alias auswählen 
--UNTERSCHEIDBAR
wählen Sie ein anderes [Feld] als [Tabellenname] aus;
-- Sortierung ORDER BY
Wählen Sie * aus [Tabellenname], sortiert nach [Sortierfeld];
-- Bedingte Abfrage WHERE
-- (1) Vergleichsoperator (2) ZWISCHEN ... UND ... (3) IN (4) IST NULL (5) WIE (6) UND (7) ODER 
(8)NICHT
Wählen Sie * aus [Tabellenname], wobei [Bedingung];

Überarbeiten

update [Tabelle] setze [Änderungsinhalt 1, Änderungsinhalt 2, ....] wobei [Bedingung];

löschen

löschen aus [Tabellenname] wo [Bedingung];

Zusammenfassen

Dies ist das Ende dieses Artikels über MySQL-Tabellenergänzungen, -löschungen, -änderungen und -abfragen. Weitere relevante MySQL-Tabellenergänzungen, -löschungen, -änderungen und -abfragen finden Sie in den vorherigen Artikeln von 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-Grundanweisungen zum Hinzufügen, Löschen, Ändern und Abfragen
  • Einfache Implementierung von Mysql-Anweisungen zum Hinzufügen, Löschen, Ändern und Abfragen
  • Beispiel für die MySQL-Triggeroperation „Hinzufügen“, „Löschen“, „Ändern“ und „Abfragen“
  • Zusammenfassung der Probleme beim Hinzufügen, Löschen, Ändern und Abfragen von MySQL-Tabellen, -Spalten und -Datenbanken
  • Detaillierte MySQL-CRUD-Anweisungen zum Hinzufügen, Löschen, Ändern und Abfragen einer einzelnen Tabelle
  • Detaillierte Erläuterung des Ansichtsbeispiels zur MySQL-Ansichtsverwaltung [Hinzufügen-, Löschen-, Ändern- und Abfragevorgänge]

<<:  Xhtml-Sonderzeichensammlung

>>:  Zusammenfassung der Möglichkeiten zur Implementierung von Single Sign-On in Vue

Artikel empfehlen

So installieren Sie allgemeine Komponenten (MySQL, Redis) in Docker

Docker installiert MySQL Docker-Suche MySQL. Such...

Anleitung zur Vermeidung von Docker Win Ping-Fehlern bei Containern

Über Win Docker-Desktop möchte ich mich mit der C...

Docker-Cross-Server-Kommunikations-Overlay-Lösung (Teil 1) Consul-Einzelinstanz

Inhaltsverzeichnis Szenario Aufgabe Idee analysie...

Detaillierte Beispiele für Variablen- und Funktionspromotion in JavaScript

js-Ausführung Phase der lexikalischen Analyse: um...

Detaillierte Erklärung der grundlegenden HTML-Tags und -Strukturen

1. HTML-Übersicht 1.HTML: Hypertext Markup Langua...

So verwenden Sie Elemente in React-Projekten

Dies ist mein erstes Mal, dass ich das Element-Fr...

Detaillierte Erklärung zum Aktivieren des https-Dienstes in Apache unter Linux

Dieser Artikel beschreibt, wie man den https-Dien...

Nginx-Server fügt benutzerdefinierte Systemd-Dienstprozessanalyse hinzu

1. Nehmen Sie nginx als Beispiel Nginx mit dem Be...

Eine kurze Diskussion über Schreibregeln für Docker Compose

Dieser Artikel stellt nichts im Zusammenhang mit ...

Langsame MySQL-Abfragen und Protokolleinstellungen und -tests

1. Einleitung Durch Aktivieren des Slow Query Log...

Einfache Implementierung von Vue Drag & Drop

In diesem Artikel wird hauptsächlich die einfache...

RHCE installiert Apache und greift mit einem Browser auf IP zu

1. at ist so konfiguriert, dass nach 5 Stunden „D...

Lösung zum Hinzufügen einer iptables-Firewall-Richtlinie zum MySQL-Dienst

Wenn Ihre MySQL-Datenbank auf einem CentOS7-Syste...