DAX (Data Analysis Expressions) একটি এক্সপ্রেশন ভাষা যা বিশেষভাবে Power BI, Power Pivot, এবং SQL Server Analysis Services (SSAS)-এ ডেটা বিশ্লেষণ এবং রিপোর্ট তৈরি করার জন্য ব্যবহৃত হয়। SWITCH ফাংশন একটি লজিক্যাল ফাংশন যা একাধিক শর্ত যাচাই করে এবং শর্ত অনুসারে মান ফেরত দেয়।
SWITCH ফাংশন ব্যবহার করে আপনি একাধিক শর্ত বা পরিস্থিতি পরীক্ষা করতে পারেন এবং সেই অনুযায়ী ফলাফল নির্ধারণ করতে পারেন। এটি সাধারণত IF ফাংশনের একটি উন্নত সংস্করণ হিসেবে ব্যবহৃত হয়, যেখানে একাধিক শর্ত একযোগে পরীক্ষা করা সম্ভব।
SWITCH Function কী?
SWITCH ফাংশন multiple conditions হ্যান্ডেল করতে ব্যবহৃত হয়, যেখানে একটি একক এক্সপ্রেশন বিভিন্ন মানের ভিত্তিতে বিভিন্ন ফলাফল প্রদান করতে পারে। এটি সাধারণত ঐতিহ্যবাহী nested IF স্টেটমেন্টের চেয়ে আরও পরিষ্কার এবং সহজে ব্যবহৃত হয়।
SWITCH ফাংশনটির সাধারণ গঠন:
SWITCH(<expression>, <value1>, <result1>, <value2>, <result2>, ..., [<else_result>])
- : এটি একটি এক্সপ্রেশন যা আপনি যাচাই করতে চান। এটি একটি কলাম বা নির্দিষ্ট মান হতে পারে।
- , , ...: এটি ঐ সমস্ত শর্ত (value) যা আপনি যাচাই করতে চান।
- , , ...: যদি কোনও শর্ত পূর্ণ হয় তবে ফলস্বরূপ মান।
- [<else_result>]: যদি কোনও শর্ত মেলে না, তাহলে একটি ডিফল্ট মান (অপশনাল)।
SWITCH Function এর ব্যবহার
ধরা যাক, আপনি একটি Sales টেবিলের Sales Amount অনুযায়ী শ্রেণিবদ্ধ (categorize) করতে চান এবং আপনি এটি করতে চান:
- যদি বিক্রয় পরিমাণ $5000 এর বেশি হয়, তবে এটি High Sales হবে।
- যদি বিক্রয় পরিমাণ $2000 এবং $5000 এর মধ্যে হয়, তবে এটি Medium Sales হবে।
- অন্যথায়, এটি Low Sales হবে।
এটি করার জন্য SWITCH ফাংশন ব্যবহার করা যেতে পারে:
Sales Category =
SWITCH(
TRUE(),
Sales[Sales Amount] > 5000, "High Sales",
Sales[Sales Amount] >= 2000 && Sales[Sales Amount] <= 5000, "Medium Sales",
"Low Sales"
)
এখানে:
- TRUE() ফাংশনটি ব্যবহার করা হয়েছে কারণ আমরা multiple conditions পরীক্ষা করছি। TRUE() ফাংশনটি কন্ডিশন চেক করার সময় আমাদের হেল্পফুল হবে।
- প্রথম শর্তটি Sales Amount > 5000, যদি এটি সঠিক হয়, তাহলে এটি "High Sales" ফেরত দেবে।
- দ্বিতীয় শর্তটি Sales Amount >= 2000 && Sales Amount <= 5000, যদি এটি সঠিক হয়, তাহলে এটি "Medium Sales" ফেরত দেবে।
- যদি কোন শর্তই পূর্ণ না হয়, তবে এটি Low Sales ফেরত দেবে।
SWITCH Function এর সুবিধা
- বিভিন্ন শর্ত সহজভাবে পরীক্ষা করা: SWITCH ফাংশন ব্যবহারকারীদের জন্য একাধিক শর্ত পরীক্ষা করা সহজ করে তোলে, যা IF ফাংশনের তুলনায় অনেক পরিষ্কার এবং ছোট।
- কোডের পরিস্কারতা: SWITCH ফাংশন nested IF ফাংশনগুলির চেয়ে পরিষ্কার এবং কম কোড লেখার প্রয়োজন হয়।
- দ্রুত এবং কার্যকরী: এটি একাধিক শর্তের জন্য একটি একক এক্সপ্রেশন ব্যবহার করে, যা কাজের গতি এবং কার্যকারিতা বাড়ায়।
আরও একটি উদাহরণ
ধরা যাক, আপনি একটি Employee টেবিলের Employee Score অনুযায়ী কর্মচারীকে Rating দিতে চান:
- যদি Employee Score 90 বা তার বেশি হয়, তবে কর্মচারীকে Excellent দেওয়া হবে।
- যদি Employee Score 70 থেকে 89 এর মধ্যে হয়, তবে Good দেওয়া হবে।
- অন্যথায়, Needs Improvement দেওয়া হবে।
এটির জন্য SWITCH ফাংশন ব্যবহার করা যেতে পারে:
Employee Rating =
SWITCH(
TRUE(),
Employee[Employee Score] >= 90, "Excellent",
Employee[Employee Score] >= 70 && Employee[Employee Score] < 90, "Good",
"Needs Improvement"
)
এই উদাহরণে:
- TRUE() ফাংশনটি ব্যবহার করা হয়েছে, কারণ আমরা শর্ত যাচাই করার সময় একটি একক এক্সপ্রেশন তৈরি করছি।
- প্রতিটি শর্তের ভিত্তিতে কর্মচারীকে একটি Rating প্রদান করা হচ্ছে।
সারাংশ
SWITCH ফাংশন DAX-এ একটি শক্তিশালী এবং কার্যকরী ফাংশন, যা একাধিক শর্ত বা পরিস্থিতি পরীক্ষা করতে সহায়ক। এটি IF ফাংশনের তুলনায় সহজ, পরিষ্কার এবং দ্রুত ক্যালকুলেশন সরবরাহ করে। SWITCH ফাংশন ব্যবহার করে আপনি আপনার ডেটা বিশ্লেষণে অনেক ধরনের কাস্টম ক্যালকুলেশন তৈরি করতে পারবেন, যা রিপোর্টিং এবং ড্যাশবোর্ডে কার্যকরী এবং নমনীয়তা প্রদান করবে।
Read more