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

MySQL-এ একই কোয়েরিতে WHERE, AND ও OR একসাথে ব্যবহার

MySQL-এ একই SELECT কোয়েরিতে WHERE, AND এবং OR লজিক্যাল অপারেটর একসাথে ব্যবহার করা যায়। অপারেটর প্রিয়োরিটি মনে রাখতে হয় (AND-র প্রিয়োরিটি OR-এর চেয়ে বেশি)।

টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable (
    StudentId INT, StudentFirstName VARCHAR(20), StudentLastName VARCHAR(20), StudentAge INT
);
mysql> INSERT INTO DemoTable VALUES 
(100,'John','Smith',23), (101,'Carol','Taylor',24), (103,'John','Doe',22), (104,'Adam','Smith',23);

সকল ডেটা

+-----------+------------------+-----------------+------------+
| StudentId | StudentFirstName | StudentLastName | StudentAge |
+-----------+------------------+-----------------+------------+
| 100       | John             | Smith           | 23         |
| 101       | Carol            | Taylor          | 24         |
| 103       | John             | Doe             | 22         |
| 104       | Adam             | Smith           | 23         |
+-----------+------------------+-----------------+------------+

WHERE, AND, OR একসাথে ব্যবহার

mysql> SELECT * FROM DemoTable 
       WHERE StudentFirstName = 'John' AND StudentLastName = 'Doe' OR StudentAge = 26;

ফলাফল

+-----------+------------------+-----------------+------------+
| StudentId | StudentFirstName | StudentLastName | StudentAge |
+-----------+------------------+-----------------+------------+
| 103       | John             | Doe             | 22         |
+-----------+------------------+-----------------+------------+

ব্যাখ্যা: AND আগে রান হয় (John AND Doe), তারপর OR (Age=26)। যেহেতু Age=26 কোনো রোয়ে নেই, শুধু John Doe মেলে। বড়括 বা পরেন্থেসিস ব্যবহার করে লজিক স্পষ্ট করা ভালো: WHERE (StudentFirstName='John' AND StudentLastName='Doe') OR StudentAge=26।

  1. MySQL-এ LIKE % এবং OR ব্যবহার করে একক কোয়ারিতে একাধিক মান বের করা

  2. MySQL CASE স্টেটমেন্টের ভিতরে WHERE ক্লজ ব্যবহার করা সম্ভব কি?

  3. MySQL-এ LIKE CONCAT() ব্যবহার করে ডাইনামিক প্যাটার্ন ম্যাচিং

  4. MySQL-এ UNION SELECT এবং IN ক্লজ একসাথে ব্যবহার