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

MySQL-এ UNION ALL ব্যবহার করে একক কোয়েরিতে দুটি টেবিলে রেকর্ড ইনসার্ট করা

প্রথম টেবিল তৈরি করি:

mysql> create table DemoTable1 (
    -> StudentName varchar(20),
    -> StudentMarks int
    -> );
Query OK, 0 rows affected (0.67 sec)

দ্বিতীয় টেবিল তৈরি করি:

mysql> create table DemoTable2 (
    -> Name varchar(20)
    -> );
Query OK, 0 rows affected (0.61 sec)

দ্বিতীয় টেবিলে রেকর্ড ইনসার্ট করি:

mysql> insert into DemoTable2 values('Chris');
Query OK, 1 row affected (0.12 sec)

দ্বিতীয় টেবিলের রেকর্ড দেখি:

mysql> select * from DemoTable2;

আউটপুট:

+-------+
| Name  |
+-------+
| Chris |
+-------+
1 row in set (0.00 sec)

UNION ALL ব্যবহার করে একক কোয়েরিতে দুটি সারি ইনসার্ট করি:

mysql> insert into DemoTable1
    -> select Name,89 from DemoTable2
    -> union all
    -> select Name,98 from DemoTable2;
Query OK, 2 rows affected (0.15 sec)
Records: 2  Duplicates: 0  Warnings: 0

প্রথম টেবিল থেকে রেকর্ড দেখি:

mysql> select * from DemoTable1;

আউটপুট:

+-------------+--------------+
| StudentName | StudentMarks |
+-------------+--------------+
| Chris       |           89 |
| Chris       |           98 |
+-------------+--------------+
2 rows in set (0.00 sec)

ব্যাখ্যা: UNION ALL ডুপ্লিকেট রো রিমুভ করে না (UNION করবে)। একই সোর্স থেকে ভিন্ন ভ্যালু ইনসার্ট করার জন্য এটি দ্রুত এবং কার্যকর।

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

  2. MySQL-এ একসাথে দুটি কলাম আপডেট করা (সিঙ্গল কোয়েরি)

  3. MySQL-এ IN() অপারেটর দিয়ে একক কোয়েরিতে একাধিক রেকর্ড ডিলিট করা

  4. MySQL-এ একক কোয়ারি দিয়ে একটি কলামে একাধিক মান কিভাবে ইনসার্ট করবেন?