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

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

MySQL-এ এক টেবিল থেকে ডেটা সিলেক্ট করে অন্য টেবিলে ইনসার্ট করতে INSERT INTO ... SELECT স্টেটমেন্ট ব্যবহার করা হয়। এটি ডেটা মাইগ্রেশন, ব্যাকআপ বা ফিল্টারড কপি করার জন্য আদর্শ।

উদাহরণ

১. সোর্স টেবিল তৈরি ও ডেটা ইনসার্ট করুন

mysql> CREATE TABLE DemoTable1 (
    -> Id INT,
    -> FirstName VARCHAR(20)
    -> );
mysql> INSERT INTO DemoTable1 VALUES(101, 'Chris');
mysql> INSERT INTO DemoTable1 VALUES(NULL, 'Bob');
mysql> INSERT INTO DemoTable1 VALUES(NULL, NULL);
mysql> INSERT INTO DemoTable1 VALUES(102, 'David');

২. ডেস্টিনেশন টেবিল তৈরি করুন

mysql> CREATE TABLE DemoTable2 (
    -> StudentId INT,
    -> StudentName VARCHAR(20)
    -> );

৩. শুধু নন-নাল মানগুলো কপি করুন

mysql> INSERT INTO DemoTable2
    -> SELECT Id, FirstName FROM DemoTable1
    -> WHERE Id IS NOT NULL AND FirstName IS NOT NULL;

৪. ডেস্টিনেশন টেবিলের ডেটা দেখুন

mysql> SELECT * FROM DemoTable2;

আউটপুট:

+-----------+-------------+
| StudentId | StudentName |
+-----------+-------------+
| 101       | Chris       |
| 102       | David       |
+-----------+-------------+

মূল পয়েন্ট:

  • কলাম সংখ্যা এবং টাইপ মেলাতে হবে।
  • WHERE ক্লজ দিয়ে ফিল্টার করা যায়।
  • AUTO_INCREMENT কলাম থাকলে সেটি ইগনোর করা যায়।
  • বড় ডেটাসেটের জন্য INSERT IGNORE INTO ... SELECT বা ON DUPLICATE KEY UPDATE ব্যবহার করুন।
  1. Java ব্যবহার করে MySQL টেবিলে রেকর্ড সন্নিবেশ করা

  2. MySQL-এ SET ক্লজ ব্যবহার করে একাধিক ডেটা ইনসার্ট করা

  3. MySQL-এ SELECT কুয়েরি দিয়ে INSERT করা (INSERT ... SELECT)

  4. NodeJS ব্যবহার করে MySQL রেকর্ড আপডেট করুন