MySQL में INSERT ... SELECT से टेबल डेटा कॉपी करना
एक टेबल की सभी पंक्तियाँ दूसरी टेबल में कॉपी करने के लिए INSERT INTO ... SELECT सिंटैक्स का उपयोग करें।
सिंटैक्स
INSERT INTO yourTableName2(yourColumnName1, ... N) SELECT yourColumnName1, ... N FROM yourTableName1;
पहली टेबल बनाना और डेटा डालना
mysql> CREATE TABLE DemoTable1 (FirstName VARCHAR(100)); Query OK, 0 rows affected (1.11 sec)
mysql> INSERT INTO DemoTable1 VALUES('John');
Query OK, 1 row affected (0.31 sec)
mysql> INSERT INTO DemoTable1 VALUES('Chris');
Query OK, 1 row affected (0.13 sec)
mysql> INSERT INTO DemoTable1 VALUES('Bob');
Query OK, 1 row affected (0.40 sec)
पहली टेबल के रिकॉर्ड
mysql> SELECT * FROM DemoTable1;
+-----------+ | FirstName | +-----------+ | John | | Chris | | Bob | +-----------+ 3 rows in set (0.00 sec)
दूसरी टेबल बनाना
mysql> CREATE TABLE DemoTable2 (EmployeeName VARCHAR(100)); Query OK, 0 rows affected (0.78 sec)
डेटा कॉपी करने का क्वेरी
mysql> INSERT INTO DemoTable2(EmployeeName) SELECT FirstName FROM DemoTable1; Query OK, 3 rows affected (0.52 sec) Records: 3 Duplicates: 0 Warnings: 0
दूसरी टेबल के रिकॉर्ड जाँचना
mysql> SELECT * FROM DemoTable2;
+--------------+ | EmployeeName | +--------------+ | John | | Chris | | Bob | +--------------+ 3 rows in set (0.00 sec)
महत्वपूर्ण: कॉलम नाम और डेटा प्रकार संगत होने चाहिए। यदि कॉलम क्रम समान है, तो कॉलम सूची छोड़ी जा सकती है: INSERT INTO DemoTable2 SELECT * FROM DemoTable1;