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

MySQL-এ একাধিক AND শর্ত ব্যবহার করা

একাধিক AND শর্ত ব্যবহার করার সিনট্যাক্স:

SELECT * FROM yourTableName 
WHERE col1=val1 AND col2=val2 AND col3=val3;

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

mysql> CREATE TABLE DemoTable (
    StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentName VARCHAR(20),
    StudentAge INT,
    StudentCountryName VARCHAR(40)
);

রেকর্ড যোগ করি:

mysql> INSERT INTO DemoTable(StudentName,StudentAge,StudentCountryName) VALUES('John',23,'US');
mysql> INSERT INTO DemoTable(StudentName,StudentAge,StudentCountryName) VALUES('Carol',21,'UK');
mysql> INSERT INTO DemoTable(StudentName,StudentAge,StudentCountryName) VALUES('John',21,'US');
mysql> INSERT INTO DemoTable(StudentName,StudentAge,StudentCountryName) VALUES('John',21,'AUS');

সকল রেকর্ড দেখতে:

mysql> SELECT * FROM DemoTable;

আউটপুট:

+-----------+-------------+------------+--------------------+
| StudentId | StudentName | StudentAge | StudentCountryName |
+-----------+-------------+------------+--------------------+
| 1         | John        | 23         | US                 |
| 2         | Carol       | 21         | UK                 |
| 3         | John        | 21         | US                 |
| 4         | John        | 21         | AUS                |
+-----------+------------+------------+--------------------+

একাধিক AND শর্ত (Name='John' AND Age=21 AND Country='AUS'):

mysql> SELECT * FROM DemoTable 
WHERE StudentName="John" AND StudentAge=21 AND StudentCountryName="AUS";

আউটপুট:

+-----------+-------------+------------+--------------------+
| StudentId | StudentName | StudentAge | StudentCountryName |
+-----------+-------------+------------+--------------------+
| 4         | John        | 21         | AUS                |
+-----------+------------+------------+--------------------+

ব্যাখ্যা: AND অপারেটর সব শর্ত সত্য হলে সারি ফেরত দেয়। এটি শর্ট-সার্কিট ইভ্যালুয়েশন করে — প্রথম শর্ত মিথ্যা হলে বাকি চেক করে না। ইনডেক্স ব্যবহারের জন্য শর্তগুলোর ক্রম গুরুত্বপূর্ণ হতে পারে।

সেরা অভ্যাস: সিলেক্টিভিটি (selectivity) বেশি শর্তগুলো আগে লিখুন (যেমন প্রাইমারি কি বা ইউনিক কলাম প্রথমে)।

  1. MySQL-এ একাধিক সারি আপডেট করে বামপাশে প্যাডিং করা

  2. MySQL-এ একাধিক কলাম দিয়ে কন্ডিশনাল লজিক (IF ফাংশন)

  3. MySQL-এ একাধিক SELECT কোয়েরি এক্সিকিউট করার পদ্ধতি

  4. MySQL-এ ORDER BY Amount=0, Amount দিয়ে শূন্য মানগুলো শেষে পাঠানো