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

MySQL-এ CASE WHEN ব্যবহার করে ১ কে 'Y' এবং ০ কে 'N' এ রূপান্তর করা (সিলেক্ট স্টেটমেন্টে)


MySQL-এ CASE WHEN এক্সপ্রেশন ব্যবহার করে টাইনি ইন্ট (1/0) কে 'Y'/'N' এ রূপান্তর করা

একটি TINYINT(1) বা বুলিয়ান কন্টেক্সটে ব্যবহৃত কলামে 1 কে 'Y' (Yes) এবং 0 কে 'N' বা 0 তে রূপান্তর করতে CASE WHEN ব্যবহার করা হয়।

সিনট্যাক্স

SELECT *, 
       CASE 
         WHEN yourColumn = 1 THEN 'Y' 
         ELSE yourColumn 
       END AS Answer
FROM yourTableName;

উদাহরণ

টেবিল তৈরি

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              |
+----+----------------+

CASE WHEN দিয়ে রূপান্তর

mysql> SELECT *, 
    -> CASE 
    ->   WHEN isValidAddress = 1 THEN 'Y' 
    ->   ELSE isValidAddress 
    -> END AS Answer 
    -> FROM changeValuefrom1toY;

ফলাফল

+----+----------------+--------+
| Id | isValidAddress | Answer |
+----+----------------+--------+
| 1  | 1              | Y      |
| 2  | 0              | 0      |
| 3  | 1              | Y      |
| 4  | 1              | Y      |
| 5  | 1              | Y      |
| 6  | 0              | 0      |
| 7  | 1              | Y      |
+----+----------------+--------+

বিকল্প: IF(isValidAddress = 1, 'Y', 'N') বা CASE isValidAddress WHEN 1 THEN 'Y' ELSE 'N' END ও ব্যবহার করা যায়।

  1. MySQL কোয়েরি: 00:00 থেকে আজকের তারিখ পর্যন্ত ডেটা নির্বাচন করা

  2. MySQL IN()-এ কেস-ইনসেনসিটিভ SELECT করা

  3. MySQL-এ SELECT স্টেটমেন্টের ভেতরে CASE স্টেটমেন্ট ব্যবহার

  4. MySQL-এ CASE WHEN ব্যবহার করে খালি ভ্যালুর জন্য কাস্টম নাম দেখান