এই কাজের জন্য INSERT SELECT স্টেটমেন্ট ব্যবহার করতে হয়। সিনট্যাক্স:
INSERT INTO yourDatabaseName1.yourTableName1(yourColumnName1, yourColumnName2, ....N) SELECT yourColumnName1, yourColumnName2, ....N FROM yourDatabaseName2.yourTableName2;
এখানে দুটি ডাটাবেস ব্যবহার করা হয়েছে: sample এবং test।
প্রথম টেবিল (test ডাটাবেসে 'send' নামক):
mysql> use test;
Database changed
mysql> create table send
-> (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> Name varchar(20)
-> );
Query OK, 0 rows affected (1.19 sec)
রেকর্ড যোগ করি।
mysql> insert into send(Name) values('John');
Query OK, 1 row affected (0.20 sec)
mysql> insert into send(Name) values('Carol');
Query OK, 1 row affected (0.40 sec)
ডেটা দেখি।
mysql> select * from send;
+----+-------+ | Id | Name | +----+-------+ | 1 | John | | 2 | Carol | +----+-------+ 2 rows in set (0.00 sec)
দ্বিতীয় টেবিল (sample ডাটাবেসে 'receive' নামক):
mysql> use sample;
Database changed
mysql> create table receive
-> (
-> UserId int,
-> UserName varchar(20)
-> );
Query OK, 0 rows affected (0.59 sec)
এখন ভিন্ন ডাটাবেস ও কলামের মধ্যে ডেটা স্থানান্তর করি।
mysql> insert into sample.receive(UserId, UserName)
-> select Id, Name from test.send;
Query OK, 2 rows affected (0.21 sec)
Records: 2 Duplicates: 0 Warnings: 0
ফলাফল যাচাই করি।
mysql> select * from receive;
+--------+----------+ | UserId | UserName | +--------+----------+ | 1 | John | | 2 | Carol | +--------+----------+ 2 rows in set (0.00 sec)