MySQL CASE স্টেটমেন্ট হল একটি ফ্লো কন্ট্রোল ফাংশন যা আমাদেরকে SELECT বা WHERE ক্লজের মতো একটি প্রশ্নের ভিতরে শর্ত তৈরি করতে দেয়। আমাদের কাছে CASE স্টেটমেন্টের দুটি সিনট্যাক্স আছে
সিনট্যাক্স-1
CASE val WHEN compare_val1 THEN result1 WHEN compare_val2 THEN result2 . . . Else result END
এখানে এই 1ম সিনট্যাক্সে, যদি ভ্যালটি compare_val1 এর সমান হয় তারপর CASE বিবৃতি ফলাফল1 প্রদান করে . যদি ভ্যালটি compare_val2 এর সমান হয় তারপর CASE বিবৃতি ফলাফল2 প্রদান করে ইত্যাদি।
যদি val কোনো compare_val এর সাথে মেলে না তাহলে CASE বিবৃতি ফলাফল প্রদান করে ELSE-এ উল্লেখ করা হয়েছে ধারা।
উদাহরণ
mysql> Select CASE 100 -> WHEN 100 THEN 'It is matched' -> WHEN 200 THEN 'It is not matched' -> ELSE 'No use of this Number' -> END as 'Matching the Number'; +---------------------+ | Matching the Number | +---------------------+ | It is matched | +---------------------+ 1 row in set (0.06 sec)
সিনট্যাক্স-2
CASE WHEN condition_1 THEN result1 WHEN condition_2 THEN result2 . . . Else result END
এখানে এই ২য় সিনট্যাক্সে, CASE বিবৃতিটি ফলাফল1, ফলাফল2, ইত্যাদি প্রদান করে . যদি শর্ত সত্য হয়। যদি সমস্ত শর্ত মিথ্যা হয় তবে CASE বিবৃতি ফলাফল প্রদান করে ELSE-এ উল্লেখ করা হয়েছে ধারা।
উদাহরণ
mysql> Select CASE -> WHEN (100 = 100) THEN 'It is Matched' -> WHEN (200 = 100) Then 'It is Not Matched' -> Else 'No use of Number' -> END as 'Matching the Number'; +---------------------+ | Matching the Number | +---------------------+ | It is Matched | +---------------------+ 1 row in set (0.00 sec)