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

MySQL-এ EXISTS সাবকোয়েরি ব্যবহার করে অন্য টেবিলের সাথে ম্যাচ করা রো সিলেক্ট করা

EXISTS দিয়ে টেবিল জোয়ান সমান্তরাল ফিল্টার

একটি টেবিলের কলাম মান অন্য টেবিলের কলাম মানর সাথে মিলে কিনা চেক করতে EXISTS সাবকোয়েরি ব্যবহার করা হয়।

উদাহরণ

টেবিল ১ (বিষয়):

mysql> CREATE TABLE DemoTable1 (Id INT, SubjectName VARCHAR(20));
mysql> INSERT INTO DemoTable1 VALUES (111,'MySQL'), (112,'MongoDB'), (113,'Java'), (114,'C'), (115,'MySQL');

টেবিল ২ (ছাত্র):

mysql> CREATE TABLE DemoTable2 (FirstName VARCHAR(20), StudentSubject VARCHAR(20));
mysql> INSERT INTO DemoTable2 VALUES ('Chris','MySQL'), ('Bob','MySQL'), ('Sam','MySQL'), ('Carol','C');

কোয়েরি: DemoTable1-এর SubjectName DemoTable2-এ আছে কিনা

mysql> SELECT Id FROM DemoTable1
    -> WHERE EXISTS (
    ->   SELECT 1 FROM DemoTable2
    ->   WHERE SubjectName = StudentSubject
    -> );

ফলাফল

+------+
| Id   |
+------+
|  111 |
|  114 |
|  115 |
+------+

ব্যাখ্যা: MySQL, C (Id=114) এবং MySQL (Id=111,115) DemoTable2-এ পাওয়া গেছে। EXISTS বুলিয়ান রিটার্ন করে, সাবকোয়েরির সিলেক্ট লিস্টে 1 বা * যেকোনো দিলেই চলে।

  1. MySQL-এ INSERT INTO SELECT দিয়ে অন্য টেবিল থেকে ডেটা কপি করা

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

  3. MySQL-এ UPDATE JOIN ব্যবহার করে অন্য টেবিল থেকে ডেটা আপডেট করা

  4. Python দিয়ে MySQL টেবিল থেকে সব ডেটা সিলেক্ট করা