MySQL-এ IF() ফাংশন ব্যবহার করে টাইনি ইন্ট (1/0) কে 'Y'/'N' এ রূপান্তর করা
MySQL-এ IF() ফাংশন একটি শর্তের ভিত্তিতে দুটি মান থেকে একটি রিটার্ন করে। এটি CASE WHEN-এর চেয়ে সংক্ষিপ্ত এবং ১/০ কে 'Y'/'N' এ রূপান্তর করতে খুব উপযুক্ত।
সিনট্যাক্স
SELECT IF(yourColumnName, 'Y', 'N') AS Answer FROM yourTableName;
লজিক: MySQL-এ নন-জিরো মান (১, -৫, ১০০...) = TRUE, শূন্য (০) = FALSE। IF(condition, trueValue, falseValue)।
উদাহরণ
টেবিল তৈরি (আগের মতো)
mysql> CREATE TABLE changeValuefrom1toY (
-> Id INT NOT NULL AUTO_INCREMENT,
-> isValidAddress TINYINT(1),
-> PRIMARY KEY(Id)
-> );
ডেটা ইনসার্ট
mysql> INSERT INTO changeValuefrom1toY(isValidAddress) VALUES(1), (0), (1), (1), (1), (0), (1);
আসল ডেটা
mysql> SELECT * FROM changeValuefrom1toY;
+----+----------------+ | Id | isValidAddress | +----+----------------+ | 1 | 1 | | 2 | 0 | | 3 | 1 | | 4 | 1 | | 5 | 1 | | 6 | 0 | | 7 | 1 | +----+----------------+
IF() দিয়ে রূপান্তর
mysql> SELECT IF(isValidAddress, 'Y', isValidAddress) AS Answer FROM changeValuefrom1toY;
ফলাফল
+--------+ | Answer | +--------+ | Y | | 0 | | Y | | Y | | Y | | 0 | | Y | +--------+
নোট: ELSE ব্রাঞ্চে isValidAddress দিয়ে ০ দেখানো হয়েছে। চাইলে 'N' দিয়েও দেওয়া যায়: IF(isValidAddress, 'Y', 'N')।