2012-02-15 21 views
5

के साथ दो तालिकाओं को विलय करने से एक नई तालिका बनाएं मेरे पास एक ही कॉलम के साथ दो टेबल हैं।यूनियन

मैं उन्हें UNION

select * from table1 
union 
select * from table2; 

साथ विलय कर सकते हैं मैं एक ही सामग्री और स्तंभों कि प्रश्न के रूप में के साथ एक नया टेबल बना सकता हूँ?

उत्तर

15

आप CREATE TABLE ... SELECT कथन का उपयोग कर सकते हैं।

CREATE TABLE new_table 
    SELECT * FROM table1 
    UNION 
    SELECT * FROM table2; 
+0

हाँ यह काम नहीं कर रहा है मैं नहीं जानता कि मैं टेबल नया_टेबल ( तालिका * से चुनें * यूनियन तालिका 2 से चुनें); –

+0

हां, बिना किसी अनुबंध के अपने काम! – netluke

1
create table new_table as 
select col1, col2 from table1 
union 
select col1, col2 from table2 

सुनिश्चित करें कि आप संघ में तालिकाओं से स्तंभ के एक ही सेट का चयन करें।

+0

mysql एक त्रुटि फेंकता है यदि आप संघीय क्वेरी कोष्ठक में लपेटने का प्रयास करते हैं। @ devart के उत्तर द्वारा सुझाए गए अनुसार, कोष्ठक को छोड़कर मेरे लिए चाल थी – s2t2

0

या यहां तक ​​कि आप स्पष्ट रूप से तालिका बना सकते हैं (हम आम तौर पर हमारे प्रोजेक्ट में उपयोग करते हैं)।

तालिका का निर्माण नहीं auditlog (

user_id varchar (30) नहीं NULL डिफ़ॉल्ट 'मौजूद है',

user_ip varchar (255) नहीं NULL डिफ़ॉल्ट ',

..... ... ........

कुंजी IE1 (user_id))

संघ = (auditlog_2, auditlog_3, auditlog_4) इंजन = विलय insert_method = पिछले;

संबंधित मुद्दे