sql >> Databasteknik >  >> RDS >> Database

Hur man kopierar data från en tabell till en annan i SQL

Ibland kan du behöva kopiera data från en tabell till en annan i din databas. I den här artikeln kommer vi att titta på hur man kopierar data från en tabell till en annan med SQL. Det är ett mycket bekvämt sätt att överföra data från en tabell till en annan. Du kan använda dessa steg för att kopiera data från en tabell till en annan i MySQL, PostgreSQL, SQL Server och Oracle.


Hur man kopierar data från en tabell till en annan tabell i SQL

Här är stegen för att kopiera data från en tabell till en annan tabell.

Låt oss säga att du har följande tabell anställda(id, förnamn, efternamn)

mysql> create table employees(id int, 
      first_name varchar(255),
      last_name varchar(255));

mysql> insert into employees(id, first_name, last_name)
       values(1,'John','Doe'),
       (2,'Jane','Doe');

mysql> select * from employees;
+------+------------+-----------+
| id   | first_name | last_name |
+------+------------+-----------+
|    1 | John       | Doe       |
|    2 | Jane       | Doe       |
+------+------------+-----------+

Låt oss säga att du vill kopiera data från anställda tabell till en annan tabell anställda2(id, förnamn, efternamn) .

mysql> create table employees2(id int,
       first_name varchar(255),
       last_name varchar(255));

Här är SQL-frågesyntaxen för att kopiera data från en tabell till en annan med hjälp av INSERT INTO-satsen.

INSERT INTO table1 (column1, column2, ...)
select column1, column2, ...
from table2

I ovanstående fråga väljer vi kolumn1, kolumn2, … från tabell2 och infogar dem i tabell1.

Läs också:Hur man uppdaterar flera kolumner i MySQL

Observera att kolumnerna som används i INSERT INTO-satsen och SELECT-satsen måste ha samma namn och ordning. Annars får du ett felmeddelande.

Här är SQL-frågan för att kopiera data från anställda tabell till anställda2 bord.

mysql> insert into employees2(id, first_name, last_name)
       select id, first_name, last_name
       from employees;

mysql> select * from employees2;
+------+------------+-----------+
| id   | first_name | last_name |
+------+------------+-----------+
|    1 | John       | Doe       |
|    2 | Jane       | Doe       |
+------+------------+-----------+

Ubiq gör det enkelt att visualisera data och övervaka dem i realtidsinstrumentpaneler. Prova Ubiq gratis.

  1. STR_TO_DATE() Exempel – MySQL

  2. 2 funktioner som returnerar månadens namn från ett datum i MySQL

  3. Konvertera PostgreSQL-array till PHP-array

  4. MySQL Innodb Crash