IF(condition, true_value, false_value) ফাংশন ব্যবহার করে শর্তসাপেক্ষে কোন কালামের মান দেখাতে হবে তা নির্ধারণ করা যায়।
টেবিল তৈরি এবং ডেটা ইনসার্ট
mysql> CREATE TABLE DemoTable (
-> PlayerName VARCHAR(100),
-> PlayerScore INT,
-> PlayerStatus VARCHAR(100)
-> );
Query OK, 0 rows affected (0.58 sec)
mysql> INSERT INTO DemoTable VALUES('John', 88, 'BAD');
mysql> INSERT INTO DemoTable VALUES('Chris', 78, 'BAD');
mysql> INSERT INTO DemoTable VALUES('Robert', 90, 'BAD');
mysql> INSERT INTO DemoTable VALUES('David', 80, 'BAD');
সকল রেকর্ড
+------------+-------------+--------------+ | PlayerName | PlayerScore | PlayerStatus | +------------+-------------+--------------+ | John | 88 | BAD | | Chris | 78 | BAD | | Robert | 90 | BAD | | David | 80 | BAD | +------------+-------------+--------------+
IF দিয়ে শর্তসাপেক্ষ সিলেকশন
mysql> SELECT PlayerScore, IF(PlayerScore > 80, PlayerName, PlayerStatus) AS Result FROM DemoTable;
আউটপুট:
+-------------+--------+ | PlayerScore | Result | +-------------+--------+ | 88 | John | | 78 | BAD | | 90 | Robert | | 80 | BAD | +-------------+--------+
ব্যাখ্যা: স্কোর ৮০ এর চেয়ে বড় হলে নাম, নয় তবে 'BAD' দেখাচ্ছে। ৮০ এর ক্ষেত্রে 'BAD' কারণ শর্ত > (স্ট্রিক্টলি গ্রেটার)।