কম্পিউটার টিউটোরিয়াল

MySQL-এ INSERT INTO SELECT দিয়ে অন্য টেবিল থেকে ডেটা কপি করা

INSERT INTO ... SELECT সিনট্যাক্স

একটি টেবিল থেকে ডেটা সিলেক্ট করে সরাসরি অন্য টেবিলে ইনসার্ট করতে INSERT INTO target_table (cols) SELECT cols FROM source_table WHERE condition ব্যবহার করুন।

উদাহরণ

mysql> CREATE TABLE DemoTable1 (
    Id INT, Name VARCHAR(20), Age INT
);

mysql> INSERT INTO DemoTable1 VALUES 
(100, 'Chris', 24), (101, 'Adam', 23), (102, 'John', 25), (103, 'Carol', 26);

mysql> CREATE TABLE DemoTable2 (
    EmployeeId INT, EmployeeFirstName VARCHAR(20), EmployeeAge INT
);

Id = 101 olan সারি কপি করা

mysql> INSERT INTO DemoTable2 (EmployeeId, EmployeeFirstName, EmployeeAge)
SELECT Id, Name, Age FROM DemoTable1 WHERE Id = 101;

ফলাফল

+------------+-------------------+-------------+
| EmployeeId | EmployeeFirstName | EmployeeAge |
+------------+-------------------+-------------+
| 101        | Adam              | 23          |
+------------+-------------------+-------------+

দ্রষ্টব্য: কলামের সংখ্যা, ক্রম ও ডেটা টাইপ মিলে থাকতে হয়। WHERE ক্লজ দিয়ে শর্তাধীন কপি করা যায়। বাল্ক ডেটা মাইগ্রেশন, আর্কাইভিং, রিপোর্টিং টেবিল পূরণে খুব কার্যকর।

  1. MySQL-এ মাস অনুযায়ী টোটাল বের করা (GROUP BY MONTH)

  2. MySQL-এ LPAD() এবং COALESCE() দিয়ে প্রিসিডিং জিরো সহ আইডি জেনারেট করা

  3. MySQL-এ INSERT INTO SELECT ব্যবহার করে অন্য টেবিল থেকে ডেটা কপি করা

  4. MySQL-এ একটি টেবিল থেকে অন্য টেবিলে ডেটা ইনসার্ট করা