UNION के साथ दो टेबल को एक नई टेबल में मर्ज करना
CREATE TABLE new_table AS SELECT ... UNION SELECT ... सिंटैक्स से दो टेबल के डेटा को मिलाकर (डुप्लिकेट हटाकर) नई टेबल बना सकते हैं।
सिंटैक्स
CREATE TABLE new_table_name SELECT * FROM table1 UNION SELECT * FROM table2;
उदाहरण
CREATE TABLE FirstTable (Id INT, PersonName VARCHAR(20)); INSERT INTO FirstTable VALUES (10, 'Larry'), (20, 'David'); CREATE TABLE SecondTable (Id INT, PersonName VARCHAR(20)); INSERT INTO SecondTable VALUES (30, 'Chris'), (40, 'Robert');
मर्ज करके नई टेबल बनाना
CREATE TABLE MergeBothTableDemo SELECT * FROM FirstTable UNION SELECT * FROM SecondTable;
परिणाम
+------+------------+ | Id | PersonName | +------+------------+ | 10 | Larry | | 20 | David | | 30 | Chris | | 40 | Robert | +------+------------+
महत्वपूर्ण बिंदु
UNIONडुप्लिकेट पंक्तियां हटाता है (सभी कॉलम समान होने पर)।UNION ALLउपयोग करें यदि डुप्लिकेट रखने हों (तेज़)।- दोनों
SELECTमें **समान कॉलम संख्या और संगत डेटा टाइप** होने चाहिए। - नई टेबल में **इंडेक्स, प्राइमरी की, AUTO_INCREMENT नहीं** बनते — केवल कॉलम और डेटा।
इंडेक्स/की बाद में जोड़ना
ALTER TABLE MergeBothTableDemo ADD PRIMARY KEY (Id);
वैकल्पिक: INSERT INTO ... SELECT UNION
यदि टेबल पहले से मौजूद है:
INSERT INTO target_table SELECT * FROM table1 UNION SELECT * FROM table2;