Complex Measures এর জন্য DAX Functions

Big Data and Analytics - পাওয়ার বিআই (Power BI) - Calculated Columns এবং Measures
189

Power BI তে DAX (Data Analysis Expressions) হল একটি ফরমুলা ভাষা যা ব্যবহারকারীদের ডেটা বিশ্লেষণ করতে এবং কাস্টম মেজারস (measures) তৈরি করতে সহায়তা করে। DAX ফাংশনগুলি বিভিন্ন ধরনের গণনা, অ্যাগ্রিগেশন, এবং ডেটা ট্রান্সফরমেশন করার জন্য ব্যবহৃত হয়। যখন আপনি Complex Measures তৈরি করতে চান, তখন DAX Functions একটি অত্যন্ত শক্তিশালী টুল হিসেবে কাজ করে। এই ফাংশনগুলির সাহায্যে আপনি কাস্টম মেজার এবং ক্যালকুলেটেড কলাম তৈরি করতে পারেন, যা ডেটাকে আরও গভীরভাবে বিশ্লেষণ করতে সহায়তা করে।

নিচে কিছু Complex Measures তৈরি করতে ব্যবহৃত DAX Functions এর উদাহরণ দেওয়া হলো:


1. SUMX (Row Context)

SUMX হল একটি Iterator ফাংশন, যা এক্সপ্রেশন (expression) বা ক্যালকুলেশন এর উপর ভিত্তি করে রো এর ভ্যালু যোগ করে।

Syntax:

SUMX (table, expression)
  • table: যে টেবিল থেকে ডেটা আসবে।
  • expression: রো লেভেলে মূল্য গণনা করার জন্য একটি এক্সপ্রেশন।

উদাহরণ:

ধরা যাক, আপনি "Sales" টেবিল থেকে প্রতিটি রো এর Quantity এবং Unit Price গুন করে মোট বিক্রয় (Total Sales) বের করতে চান:

Total Sales = SUMX(Sales, Sales[Quantity] * Sales[Unit Price])

এটি "Sales" টেবিলের প্রতিটি রো এর বিক্রয়ের মোট মান গণনা করবে।


2. CALCULATE (Context Transition)

CALCULATE একটি শক্তিশালী DAX ফাংশন যা নতুন ফিল্টার কনটেক্সট তৈরি করতে সাহায্য করে। এটি সাধারণত ফিল্টার প্রক্রিয়ার মাধ্যমে একটি এক্সপ্রেশন বা মেজারকে কাস্টমাইজ করতে ব্যবহৃত হয়।

Syntax:

CALCULATE (expression, filter1, filter2, ...)
  • expression: যে ক্যালকুলেশন করতে চান।
  • filter1, filter2: ফিল্টার এক্সপ্রেশন যা CALCULATE এর মাধ্যমে নির্ধারণ করা হবে।

উদাহরণ:

ধরা যাক, আপনি "Sales" টেবিল থেকে শুধুমাত্র ২০২৩ সালের ডেটা নিয়ে Total Sales বের করতে চান:

Total Sales 2023 = CALCULATE(SUM(Sales[Sales Amount]), YEAR(Sales[Date]) = 2023)

এটি "Sales Amount" এর যোগফল বের করবে, যেখানে শুধুমাত্র ২০২৩ সালের ডেটা কনসিডার করা হবে।


3. FILTER (Row Context Modification)

FILTER ফাংশন একটি ফিল্টার কন্ডিশন অ্যাপ্লাই করার জন্য ব্যবহৃত হয় এবং এটি রো কনটেক্সটকে পরিবর্তন করে।

Syntax:

FILTER (table, expression)
  • table: যে টেবিল থেকে ডেটা ফিল্টার করতে চান।
  • expression: ফিল্টার শর্ত।

উদাহরণ:

ধরা যাক, আপনি "Sales" টেবিল থেকে শুধুমাত্র সেই রেকর্ডগুলো চান যেখানে বিক্রয়ের পরিমাণ ৫০০ বা তার বেশি:

High Sales = FILTER(Sales, Sales[Sales Amount] >= 500)

এটি একটি ফিল্টারড টেবিল প্রদান করবে যেখানে শুধুমাত্র ৫০০ বা তার বেশি বিক্রয় রয়েছে।


4. ALL (Removing Filters)

ALL ফাংশন একটি কনটেক্সট থেকে সমস্ত ফিল্টার মুছে ফেলতে ব্যবহৃত হয়। এটি ডেটা বিশ্লেষণে সমস্ত ফিল্টার সত্ত্বেও একটি নির্দিষ্ট ফলাফল নির্ধারণ করতে সহায়তা করে।

Syntax:

ALL (table)
  • table: যেটি থেকে সমস্ত ফিল্টার মুছে ফেলতে চান।

উদাহরণ:

ধরা যাক, আপনি "Sales" টেবিলের সমস্ত ডেটা নিয়ে Total Sales বের করতে চান, ফিল্টার বা সিলেকশন সত্ত্বেও:

Total Sales All = CALCULATE(SUM(Sales[Sales Amount]), ALL(Sales))

এটি "Sales" টেবিলের সমস্ত ডেটা নিয়ে বিক্রয়ের মোট পরিমাণ গণনা করবে, কোনো ফিল্টার ছাড়াই।


5. DISTINCTCOUNT (Counting Unique Values)

DISTINCTCOUNT একটি ফাংশন যা টেবিল বা কলামে ইউনিক মানের সংখ্যা গননা করে।

Syntax:

DISTINCTCOUNT (column)
  • column: যেই কলামে ইউনিক মান গুনতে চান।

উদাহরণ:

ধরা যাক, আপনি "Sales" টেবিলের Customer ID কলাম থেকে ইউনিক কাস্টমারদের সংখ্যা জানতে চান:

Unique Customers = DISTINCTCOUNT(Sales[Customer ID])

এটি "Sales" টেবিল থেকে ইউনিক কাস্টমারদের সংখ্যা গণনা করবে।


6. RELATED (Relationship Between Tables)

RELATED ফাংশন ব্যবহার করে আপনি এক টেবিল থেকে অন্য টেবিলের কলামে মান নিয়ে আসতে পারেন, যখন দুটি টেবিলের মধ্যে সম্পর্ক (relationship) বিদ্যমান থাকে।

Syntax:

RELATED (column)
  • column: অন্য টেবিল থেকে কলাম নির্বাচন করুন।

উদাহরণ:

ধরা যাক, "Sales" টেবিলের মধ্যে Product ID রয়েছে এবং "Products" টেবিলেও একটি Product Name কলাম রয়েছে। আপনি "Sales" টেবিল থেকে Product Name আনতে চান:

Product Name = RELATED(Products[Product Name])

এটি "Sales" টেবিল থেকে সম্পর্কিত "Products" টেবিলের Product Name কলাম দেখাবে।


7. DATEDIFF (Date Difference)

DATEDIFF ফাংশন দুইটি তারিখের মধ্যে পার্থক্য গণনা করতে ব্যবহৃত হয়।

Syntax:

DATEDIFF (start_date, end_date, interval)
  • start_date: শুরুর তারিখ।
  • end_date: শেষ তারিখ।
  • interval: সময়ের ইউনিট (DAY, MONTH, YEAR, etc.)।

উদাহরণ:

ধরা যাক, আপনি "Orders" টেবিলের মধ্যে Order Date এবং Ship Date এর মধ্যে পার্থক্য বের করতে চান, একে দিন হিসেবে:

Days to Ship = DATEDIFF(Orders[Order Date], Orders[Ship Date], DAY)

এটি Order Date এবং Ship Date এর মধ্যে পার্থক্য দিন হিসেবে বের করবে।


সারাংশ:

Power BI তে Complex Measures তৈরি করতে DAX Functions অত্যন্ত গুরুত্বপূর্ণ। এই ফাংশনগুলির মাধ্যমে আপনি কাস্টম মেজার তৈরি করে ডেটার গভীর বিশ্লেষণ করতে পারেন। যেমন SUMX, CALCULATE, FILTER, ALL, DISTINCTCOUNT, RELATED, এবং DATEDIFF ইত্যাদি ফাংশন ব্যবহার করে আপনি জটিল গণনা এবং কাস্টম মেজার তৈরি করতে পারেন, যা ডেটাকে আরও স্পষ্ট এবং কার্যকরীভাবে বিশ্লেষণ করতে সহায়তা করবে।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...