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

MySQL সাবকোয়েরিতে ALL, ANY, SOME, IN অপারেটরের ব্যবহার

ALL, ANY, SOME, IN অপারেটর সাবকোয়েরি থেকে রিটার্ন হওয়া প্রতিটি মানের সাথে তুলনা করে। এই সব অপারেটরের পরে অবশ্যই একটি তুলনা অপারেটর থাকতে হয়।

সিনট্যাক্স

Operand comparison_operator ALL (subquery)
Operand comparison_operator ANY (subquery)
Operand comparison_operator SOME (subquery)
Operand comparison_operator IN (subquery)

উদাহরণ

Customers এবং Reservations টেবিল ব্যবহার:

mysql> Select * from Customers;
+-------------+----------+
| Customer_Id | Name     |
+-------------+----------+
|           1 | Rahul    |
|           2 | Yashpal  |
|           3 | Gaurav   |
|           4 | Virender |
+-------------+----------+

mysql> Select * from Reservations;
+------+-------------+------------+
| ID   | Customer_id | Day        |
+------+-------------+------------+
|    1 |           1 | 2017-12-30 |
|    2 |           2 | 2017-12-28 |
|    3 |           2 | 2017-12-29 |
|    4 |           1 | 2017-12-25 |
|    5 |           3 | 2017-12-26 |
+------+-------------+------------+

ALL অপারেটর:

mysql> SELECT customer_id from Customers WHERE customer_id <> ALL(Select customer_id from reservations);
+-------------+
| customer_id |
+-------------+
|           4 |
+-------------+

সাবকোয়েরির সব মান (1,2,3) থেকে ভিন্ন যেসব customer_id, সেগুলো (4)।

ANY অপারেটর:

mysql> SELECT customer_id from customers WHERE customer_id = ANY(Select customer_id from reservations);
+-------------+
| customer_id |
+-------------+
|           1 |
|           2 |
|           3 |
+-------------+

সাবকোয়েরির যেকোনো একটি মান (1,2,3) এর সাথে মিল থাকলে TRUE।

SOME অপারেটর:

mysql> SELECT customer_id from customers WHERE customer_id = Some(Select customer_id from reservations);
+-------------+
| customer_id |
+-------------+
|           1 |
|           2 |
|           3 |
+-------------+

SOME হলো ANY-এর সিনোনিম।

IN অপারেটর:

mysql> SELECT customer_id from customers WHERE customer_id IN (Select customer_id from reservations);
+-------------+
| customer_id |
+-------------+
|           1 |
|           2 |
|           3 |
+-------------+

IN হলো = ANY-এর সমতুল্য।

  1. MySQL-এ ORDER BY ক্লজের ব্যবহারিতা

  2. MySQL-এ WITH ROLLUP মডিফায়ারের ব্যবহার

  3. MySQL IGNORE INSERT স্টেটমেন্টের ব্যবহার

  4. MySQL-এ সাবকোয়েরি ব্যবহার করে সর্বোচ্চ বয়স পাওয়া সব ইউজার বের করা