मान लीजिए कि आपको एक टेबल से दूसरी टेबल में डेटा कॉपी करने की जरूरत है। आप MySQL में तालिका से दूसरे में डेटा सम्मिलित कर सकते हैं।
INSERT INTO SELECT स्टेटमेंट एक टेबल से दूसरी टेबल में डेटा कॉपी करता है। लक्ष्य तालिका में मौजूदा पंक्तियाँ अप्रभावित हैं।
वाक्यविन्यास
सभी स्तंभों के लिए एक तालिका से दूसरी तालिका में डेटा डालें,
INSERT INTO table2 SELECT * FROM table1;
विशिष्ट स्तंभों के लिए एक तालिका से दूसरी तालिका में डेटा डालें,
INSERT INTO table2 column1, column2.. SELECT column1, column2, .. FROM table1;
उदाहरण
2 नमूना तालिकाओं पर विचार करें, उपयोगकर्ता और ग्राहक
Users +------+--------------+-------------+ | id | user_name | location | +------+--------------+-------------+ | 1 | Jim | London | | 4 | Rocky | US | | 7 | Dan | Italy | | 3 | Bill | France | +------+--------------+-------------+
Customers +-------+------------------+--------+------------+ | id | customer_name | age | location | +-------+------------------+--------+------------+ | 11 | John | 23 | US | | 14 | Roger | 36 | London | | 17 | Will | 29 | Spain | | 13 | Bob | 34 | Japan | +-------+------------------+--------+------------+
कुछ स्तंभों के लिए एक तालिका से दूसरी तालिका में डेटा डालें
mysql> INSERT INTO users (user_name, location) SELECT customer_name, location FROM customers; +------+--------------+-------------+ | id | user_name | location | +------+--------------+-------------+ | 1 | Jim | London | | 4 | Rocky | US | | 7 | Dan | Italy | | 3 | Bill | France | | 11 | John | US | | 14 | Roger | London | | 17 | Will | Spain | | 13 | Bob | Japan | +-------+-------------+-------------+
कुछ स्तंभों के लिए एक तालिका से दूसरी तालिका में डेटा डालें, केवल वे ग्राहक जो 'यूएस' में स्थित हैं