MySQL-এ CASE স্টেটমেন্ট UPDATE কোয়েরির মধ্যে ব্যবহার করে একাধিক পণ্যের দাম ভিন্ন-भিন্ন হারেই একবারে বাড়ানো যায়। এটি বারবার কোয়েরি চালানোর প্রয়োজনীয়তা দূর করে।
উদাহরণ
১. টেবিল তৈরি করুন
mysql> CREATE TABLE DemoTable (
-> ProductName VARCHAR(20),
-> ProductPrice INT
-> );
২. ডেটা ইনসার্ট করুন
mysql> INSERT INTO DemoTable VALUES('Product-1', 700);
mysql> INSERT INTO DemoTable VALUES('Product-2', 1000);
mysql> INSERT INTO DemoTable VALUES('Product-3', 3000);
৩. বর্তমান দাম দেখুন
mysql> SELECT * FROM DemoTable;
আউটপুট:
+-------------+--------------+
| ProductName | ProductPrice |
+-------------+--------------+
| Product-1 | 700 |
| Product-2 | 1000 |
| Product-3 | 3000 |
+-------------+--------------+
৪. CASE ব্যবহার করে দাম আপডেট করুন
mysql> UPDATE DemoTable
-> SET ProductPrice = CASE
-> WHEN ProductName = 'Product-1' THEN ProductPrice + (ProductPrice * 20 / 100)
-> WHEN ProductName = 'Product-2' THEN ProductPrice + (ProductPrice * 40 / 100)
-> WHEN ProductName = 'Product-3' THEN ProductPrice + (ProductPrice * 60 / 100)
-> END;
৫. আপডেট হওয়া দাম দেখুন
mysql> SELECT * FROM DemoTable;
আউটপুট:
+-------------+--------------+
| ProductName | ProductPrice |
+-------------+--------------+
| Product-1 | 840 | (700 + 20%)
| Product-2 | 1400 | (1000 + 40%)
| Product-3 | 4800 | (3000 + 60%)
+-------------+--------------+
লক্ষ্য করুন: প্রতিটি পণ্যের জন্য ভিন্ন পারসেন্টেজ বৃদ্ধি একই কোয়েরিতে করা হয়েছে। ELSE ক্লজ ব্যবহার না করলে মিল না পেলে মান NULL হবে, তাই সাবধানে শর্ত লিখুন।