Kopieren eine Tabelle in MySQL
-
Tabelle mit der Anweisung
CREATE TABLE ... AS SELECT
klonen -
Tabelle mit Teildaten mit der Klausel
WHERE
klonen
Dieses Tutorial zielt darauf ab, verschiedene Methoden zum Erstellen einer Kopie einer Tabelle in MySQL zu erkunden.
Die Quelltabelle wird auch als zu kopierende Tabelle bezeichnet, und die Zieltabelle, bekannt als Klontabelle, kann aus derselben oder separaten Datenbanken innerhalb eines MySQL-Servers stammen.
Wir werden die folgenden Methoden untersuchen, um eine Tabelle in MySQL zu kopieren:
- Tabelle mit der Anweisung
CREATE TABLE ... AS SELECT
klonen. - Tabelle mit Teildaten mit der Klausel
WHERE
klonen.
Bevor wir beginnen, erstellen wir ein Dummy-Dataset, mit dem wir arbeiten können. Hier erstellen wir eine Tabelle, student_details
, zusammen mit einigen Zeilen darin.
-- create the table student_details
CREATE TABLE student_details(
stu_id int,
stu_firstName varchar(255) DEFAULT NULL,
stu_lastName varchar(255) DEFAULT NULL,
primary key(stu_id)
);
-- insert rows to the table student_details
INSERT INTO student_details(stu_id,stu_firstName,stu_lastName)
VALUES(1,"Preet","Sanghavi"),
(2,"Rich","John"),
(3,"Veron","Brow"),
(4,"Geo","Jos"),
(5,"Hash","Shah"),
(6,"Sachin","Parker"),
(7,"David","Miller");
Die obige Abfrage erstellt eine Tabelle zusammen mit Zeilen mit dem Vor- und Nachnamen des Schülers. Um die Einträge in den Daten einzusehen, verwenden wir folgenden Code:
SELECT * FROM student_details;
Der oben genannte Code würde folgendes Ergebnis liefern:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
Erstellen wir nun eine Kopie der obigen Tabelle mit dem Namen students_data_backup
.
Tabelle mit der Anweisung CREATE TABLE ... AS SELECT
klonen
Eine der einfachsten Methoden zum Erstellen einer Tabellenkopie ist die Verwendung der Anweisung CREATE TABLE ... AS SELECT
. Wir können diese Operation mit dem folgenden Code durchführen:
-- Basic copy table creation
create table students_data_backup as select * from student_details;
Der oben genannte Code erstellt eine Kopiertabelle namens students_data_backup
aus der Tabelle student_details
, die als Quelltabelle fungiert. Diese neue Tabelle students_data_backup
können wir mit folgender Abfrage visualisieren:
select * from students_data_backup;
Die Ausgabe des oben genannten Codes führt zu einer temporären Tabelle wie folgt:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
6 Sachin Parker
7 David Miller
Tabelle mit Teildaten mit der Klausel WHERE
klonen
Manchmal muss nur ein bestimmter Teil einer bestimmten Datei geklont werden. Wir können die Klausel WHERE
und die Anweisung CREATE TABLE ... AS SELECT
verwenden, um diese Operation auszuführen.
Versuchen wir, die Tabelle student_details
teilweise zu klonen. Wir entscheiden uns, die Tabelle mit nur den Daten der ersten fünf stu_id
zu klonen.
Wir können diese Operation mit dem folgenden Code durchführen:
-- Cloning the student_details table with where clause
create table students_data_backup as select * from student_details WHERE stu_id <= 5;
Das angegebene Codebeispiel erzeugt die folgende Ausgabe:
stu_id stu_firstName stu_lastName
1 Preet Sanghavi
2 Rich John
3 Veron Brow
4 Geo Jos
5 Hash Shah
Wie wir sehen, wurde eine Kopie der Tabelle student_details
erstellt, jedoch nur mit den ersten fünf stu_id
.
Mit dieser Technik können wir je nach Bedarf Teildaten aus einer bestimmten Tabelle klonen. Mit Hilfe der beiden oben genannten Methoden können wir ganz einfach eine Kopie der Quelltabelle erstellen.
Verwandter Artikel - MySQL Table
- Alle Zeilen einer MySQL-Tabelle durchlaufen
- Kopieren Sie Tabellenstrukturen, ohne Daten in MySQL zu kopieren
- Rufen Sie die ID des zuletzt eingefügten Datensatzes in MySQL ab
- Sichern Sie eine einzelne Tabelle mit Mysqldump
- Tabellen- und Datenbankstruktur in MySQL anzeigen
- Unterschied zwischen zwei Tabellen in MySQL