MySQL-এ INSERT INTO SELECT দিয়ে ডেটা ট্রান্সফার
একটি টেবিল থেকে ডেটা সিলেক্ট করে অন্য টেবিলে ইনসার্ট করতে, এবং নতুন টেবিলের একটি কলামে নির্দিষ্ট মান সেট করতে INSERT INTO ... SELECT সিনট্যাক্স ব্যবহার করা হয়।
সিনট্যাক্স
INSERT INTO targetTable(col1, col2) SELECT sourceCol, fixedValue FROM sourceTable;
উদাহরণ সহ ব্যাখ্যা
সোর্স টেবিল তৈরি ও ডেটা ইনসার্ট:
mysql> CREATE TABLE insertOneToAnotherTable (Value INT); mysql> INSERT INTO insertOneToAnotherTable VALUES(100), (200), (300), (400), (500), (600);
ডেস্টিনেশন টেবিল তৈরি:
mysql> CREATE TABLE recieveDateFromTable (
-> Value1 INT,
-> Value2 INT
-> );
ডেটা কপি করে Value2=1000 সেট করি:
mysql> INSERT INTO recieveDateFromTable(Value1, Value2)
-> SELECT Value, 1000 FROM insertOneToAnotherTable;
ফলাফল:
mysql> SELECT * FROM recieveDateFromTable;
+--------+--------+ | Value1 | Value2 | +--------+--------+ | 100 | 1000 | | 200 | 1000 | | 300 | 1000 | | 400 | 1000 | | 500 | 1000 | | 600 | 1000 | +--------+--------+
ব্যবহার ক্ষেত্র: ডেটা মাইগ্রেশন, আর্কাইভিং, রিপোর্টিং টেবিল পূরণ, ইত্যাদিতে এটি খুব কাজে আসে।