INSERT ... SELECT सिंटैक्स के साथ कॉलम मैपिंग
आप एक टेबल से चुनकर दूसरी टेबल में डाल सकते हैं, कॉलम नामों को स्पष्ट रूप से मैप करके।
सिंटैक्स
INSERT INTO targetTable (col1, col2, ...) SELECT col1, col2, ... FROM sourceTable WHERE condition;
उदाहरण
mysql> CREATE TABLE CombiningInsertValuesSelect (
-> EmployeeId VARCHAR(10), EmployeeName VARCHAR(100), EmployeeAge INT
-> );
mysql> CREATE TABLE getAllValues (Id VARCHAR(100), Name VARCHAR(100), Age INT);
mysql> INSERT INTO getAllValues VALUES
-> ('EMP-1','John',26), ('EMP-2','Carol',22), ('EMP-3','Sam',24),
-> ('EMP-4','David',27), ('EMP-5','Bob',21);
शर्त के साथ चुनिंदा रिकॉर्ड डालें:
mysql> INSERT INTO CombiningInsertValuesSelect (EmployeeId, EmployeeName, EmployeeAge)
-> SELECT Id, Name, Age FROM getAllValues WHERE Id = 'EMP-4';
परिणाम:
mysql> SELECT * FROM CombiningInsertValuesSelect;
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | EMP-4 | David | 27 | +------------+--------------+-------------+
नोट: कॉलम क्रम और डेटा प्रकार संगत होने चाहिए। VALUES क्लॉज यहां उपयोग नहीं किया जाता।