CREATE TABLE AS SELECT से तालिका क्लोन करना
CREATE TABLE new_table AS SELECT * FROM old_table से संरचना और डेटा दोनों एक बार में कॉपी हो जाते हैं।
स्रोत तालिका
mysql> CREATE TABLE DemoTable1518 (
-> EmployeeId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> EmployeeName VARCHAR(20)
-> ) AUTO_INCREMENT = 101;
mysql> INSERT INTO DemoTable1518(EmployeeName) VALUES
-> ('John Doe'), ('John Smith'), ('David Miller');
नई तालिका बनाकर कॉपी
mysql> CREATE TABLE DemoTable1519 AS SELECT * FROM DemoTable1518;
Query OK, 3 rows affected (0.62 sec)
परिणाम
+------------+--------------+
| EmployeeId | EmployeeName |
+------------+--------------+
| 101 | John Doe |
| 102 | John Smith |
| 103 | David Miller |
+------------+--------------+
महत्वपूर्ण अंतर:
CREATE TABLE ... AS SELECT: नई तालिका बनाता है, डेटा कॉपी करता है, इंडेक्स/कंस्ट्रेंट नहींINSERT INTO ... SELECT: मौजूदा तालिका में डेटा डालता हैLIKEक्लॉज:CREATE TABLE new LIKE oldकेवल संरचना कॉपी करता है