MySQL-এ INSERT INTO ... SELECT স্টেটমেন্ট ব্যবহার করে একটি টেবিল থেকে ডেটা অন্য টেবিলে কপি করা যায়।
টেবিল ১ তৈরি ও ডেটা ইনসার্ট
mysql> create table DemoTable1 (
-> Id int,
-> FirstName varchar(20)
-> );
Query OK, 0 rows affected (0.49 sec)
mysql> insert into DemoTable1 values(101,'Adam');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable1 values(102,'John');
Query OK, 1 row affected (0.11 sec)
mysql> select * from DemoTable1;
+------+-----------+
| Id | FirstName |
+------+-----------+
| 101 | Adam |
| 102 | John |
+------+-----------+
2 rows in set (0.00 sec)
টেবিল ২ তৈরি
mysql> create table DemoTable2 (
-> EmployeeId int,
-> EmployeeName varchar(20)
-> );
Query OK, 0 rows affected (0.42 sec)
ডেটা কপি করার কোয়েরি
mysql> insert into DemoTable2(EmployeeId,EmployeeName) select Id,FirstName from DemoTable1; Query OK, 2 rows affected (0.15 sec) Records: 2 Duplicates: 0 Warnings: 0
টেবিল ২-এর ডেটা যাচাই
mysql> select * from DemoTable2; +------------+--------------+ | EmployeeId | EmployeeName | +------------+--------------+ | 101 | Adam | | 102 | John | +------------+--------------+ 2 rows in set (0.00 sec)
গুরুত্বপূর্ণ পয়েন্টস
- কলামের সংখ্যা ও ডেটা টাইপ মেলতে হবে।
INSERT INTO target(col1,col2) SELECT col1,col2 FROM sourceসিন্ট্যাক্স ব্যবহার করুন।- WHERE ক্লজ দিয়ে ফিল্টারও করা যায়।