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

MySQL-এ IF() ব্যবহার করে অন্য কলামে নির্দিষ্ট স্ট্রিং আছে কিনা চেক করে Yes/No রিটার্ন করা

এক কলামে নির্দিষ্ট স্ট্রিং আছে কিনা চেক করে অন্য কলামে 'Yes'/'No' রিটার্ন করতে IF(condition, true_val, false_val) ফাংশন ব্যবহার করা হয়।

টেবিল তৈরি ও ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable (FirstName VARCHAR(100), LastName VARCHAR(100));
Query OK, 0 rows affected (1.28 sec)
mysql> INSERT INTO DemoTable VALUES ('Chris', 'Brown');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable VALUES ('David', 'Miller');
Query OK, 1 row affected (0.15 sec)
mysql> INSERT INTO DemoTable VALUES ('Adam', 'Smith');
Query OK, 1 row affected (0.11 sec)

রেকর্ড দেখানো

mysql> SELECT * FROM DemoTable;

আউটপুট:

+-----------+----------+
| FirstName | LastName |
+-----------+----------+
| Chris     | Brown    |
| David     | Miller   |
| Adam      | Smith    |
+-----------+----------+
3 rows in set (0.00 sec)

LastName 'Miller' কিনা চেক করে Yes/No

mysql> SELECT IF(LastName = 'Miller', 'Yes', 'No') AS LastName, FirstName 
FROM DemoTable;

ফলাফল:

+----------+-----------+
| LastName | FirstName |
+----------+-----------+
| No       | Chris     |
| Yes      | David     |
| No       | Adam      |
+----------+-----------+
3 rows in set (0.00 sec)

ব্যাখ্যা

  • IF(LastName = 'Miller', 'Yes', 'No') - শর্ত সত্য হলে 'Yes', মিথ্যা হলে 'No'।
  • আউটপুট কলামের নাম AS LastName দিয়ে পরিবর্তন করা হয়েছে।
  • মূল LastName কলাম এখন আউটপুটে নেই (অ্যালায়াস দ্বারা আচ্ছাদিত)।

বিকল্প: CASE WHEN

SELECT CASE WHEN LastName = 'Miller' THEN 'Yes' ELSE 'No' END AS HasMiller, FirstName
FROM DemoTable;

CASE একাধিক শর্ত হ্যান্ডেল করতে পারে, IF শুধু একটি শর্ত।

বুলিয়ান রিটার্ন (১/০)

স্ট্রিং বদলে ১/০ চাইলে: SELECT (LastName = 'Miller') AS IsMiller, FirstName FROM DemoTable;

  1. MySQL-এ একটি ফিল্ড সিলেক্ট করুন, যদি NULL হয় তবে অন্যটি সিলেক্ট করুন

  2. MySQL-এ এস্টারিস্ক (*) সম্বলিত ফিল্ড নাম সিলেক্ট করা যাবে কি?

  3. MySQL-এ BOOLEAN কলামে TRUE/FALSE কে ১/০ হিসেবে দেখানো

  4. পাইথনে স্ট্রিং শুধু দশমিক ক্যারেক্টার ধারণ করছে কিনা যাচাই করা