MySQL CASE একটি সুইচ স্টেটমেন্টের মতো কাজ করে৷ CASE এর সিনট্যাক্স নিম্নরূপ -
কেস 1 - বিবৃতি তুলনা করুন
যখন যেকোনও তুলনা স্টেটমেন্ট তারপর মান1যখন যেকোন তুলনা স্টেটমেন্ট তারপর মান 2..যেকোন ভ্যারিয়েবল নাম হিসাবে নেলস;
কেস 2 - শর্তাবলী
দ্বিতীয় সিনট্যাক্স ব্যবহার করা যেতে পারে যখন আপনি শুধুমাত্র একটি কলাম নির্বাচন করছেন। সিনট্যাক্স নিম্নরূপ -
কেস yourColumnNamewhen condition1 তারপর result1 when condition1 তারপর result2..Nelse anyValueend;
উপরের ধারণাটি বোঝার জন্য, আসুন আমরা নির্বাচন বিবৃতি ব্যবহার করি।
কেস 1
প্রশ্নটি নিম্নরূপ -
mysql> নির্বাচন করুন -> ক্ষেত্রে যখন 45 <55 তারপর '55 45 এর চেয়ে বড়' -> যখন 10!=11 তখন '10 11 এর সমান নয়' -> অন্যথা 'ডিফল্ট কেস' -> ফলাফল হিসাবে শেষ হয়;
আউটপুট
<প্রে>+------------+| ফলাফল |+------------+| 55 হল 45 এর থেকে বড় |+----------+1 সারি সেটে (0.00 সেকেন্ড)কেস 2
আসুন দ্বিতীয় সিনট্যাক্স বোঝার জন্য একটি টেবিল তৈরি করি।
একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -
mysql> টেবিল CaseDemo তৈরি করুন -> ( -> আইডি int, -> নাম varchar(100) -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.93 সেকেন্ড)
সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ -
কেসডেমো মানগুলিতেmysql> সন্নিবেশ করুন )
একটি নির্বাচন বিবৃতি ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -
কেসডেমো থেকেmysql> নির্বাচন করুন;
আউটপুট
+------+------+| আইডি | নাম |+------+------+| 1 | জন || 2 | স্যাম |+------+------+2 সারি সেটে (0.00 সেকেন্ড)
এখানে CASE-এর দ্বিতীয় প্রশ্ন যা শুধুমাত্র একটি মান দিয়ে কাজ করতে ব্যবহার করা যেতে পারে। প্রশ্নটি নিম্নরূপ -
mysql> কেস নাম নির্বাচন করুন-> যখন 'জন' তারপর 'তার নাম জন'-> যখন 'স্যাম' তারপরে 'তার নাম স্যাম'-> অন্য -1-> ফলাফল হিসাবে-> কেসডেমো থেকে;প্রে>আউটপুট
<প্রে>+-------------------+| ফলাফল |+-------------------+| তার নাম জন || তার নাম স্যাম |+-----------------+2 সারি সেটে (0.00 সেকেন্ড)