INSERT ... SELECT के साथ टेबल पॉप्युलेट करना
एक टेबल से दूसरी टेबल में डेटा कॉपी/पॉप्युलेट करने के लिए:
INSERT INTO target_table(col1, col2, col3, ...) SELECT col1, col2, col3, ... FROM source_table;
उदाहरण: स्रोत टेबल बनाना और डेटा डालना
mysql> CREATE TABLE PopulateTableDemo (
-> Id INT NOT NULL AUTO_INCREMENT,
-> Name VARCHAR(20),
-> Amount INT,
-> ArrivalDateTime DATETIME,
-> PRIMARY KEY(Id)
-> );
mysql> INSERT INTO PopulateTableDemo(Name, Amount, ArrivalDateTime)
-> VALUES('John', 456, '2018-02-04'),
-> ('Carol', 1000, '2019-10-21'),
-> ('Sam', 970, '2019-07-25'),
-> ('Larry', 1050, '2015-10-28');
लक्ष्य टेबल बनाना
mysql> CREATE TABLE PopulateQueryFromAnotherTable (
-> Id INT NOT NULL AUTO_INCREMENT,
-> UserName VARCHAR(20),
-> Salary INT,
-> DepartureDateTime DATETIME,
-> PRIMARY KEY(Id)
-> );
डेटा पॉप्युलेट करना
mysql> INSERT INTO PopulateQueryFromAnotherTable(UserName, Salary, DepartureDateTime)
-> SELECT Name, Amount, ArrivalDateTime FROM PopulateTableDemo;
Query OK, 4 rows affected
परिणाम वेरीफाई करना
mysql> SELECT * FROM PopulateQueryFromAnotherTable;
+----+----------+--------+---------------------+ | Id | UserName | Salary | DepartureDateTime | +----+----------+--------+---------------------+ | 1 | John | 456 | 2018-02-04 00:00:00 | | 2 | Carol | 1000 | 2019-10-21 00:00:00 | | 3 | Sam | 970 | 2019-07-25 00:00:00 | | 4 | Larry | 1050 | 2015-10-28 00:00:00 | +----+----------+--------+---------------------+
कॉलम क्रम और डेटा टाइप्स संगत होने चाहिए। कॉलम नाम अलग हो सकते हैं।