مقدمه ای بر زبان DAX
زبان DAX مخفف Data Analysis Expressions به معنی عبارات تجزیه و تحلیل داده است. یک زبان برنامه نویسی است که برای مثال در نرم افزار Power BI برای سه منظور استفاده می شود:
- ستون محاسبه شده یا Calculated column
- سنجه یا Measure
- جدول محاسبه شده یا Calculated table
این زبان شامل مجموعه ای از توابع، عملگرها و ثابت هایی است که می توانند در یک فرمول یا عبارت برای محاسبه و برگرداندن یک یا چند مقدار استفاده شوند. شما می توانید از DAX برای حل مسائل مرتبط با تجزیه و تحلیل داده ها استفاده کنید، که می تواند به شما کمک کند اطلاعات جدیدی را از داده هایی که قبلاً در اختیار داشته اید بدست آورید.
در Power BI میتوانید از تکنیکها و توابع محاسباتی مختلف برای ایجاد Measureها یا ستونهای محاسبهشده استفاده کنید. نکته کلیدی این است که بدانید چگونه و چه زمانی از سنجه یا ستون استفاده کنیم و این کار به گونه ای انجام دهیم که کارایی بالایی حاصل شود.
ایجاد یک ستون به کمک DAX
فرض کنید که جدولی داریم که دارای ستون قیمت واحد و مقدار فروش رفته به ازای هر ردیف دارد، حال چگونه می توانیم ستون جمع کل ایجاد کنیم؟ برای مثال 12 عدد کالای 14 دلاری فروخته شده است، اما ستونی که جمع کل یعنی 168=14*12 را نشان دهد نداریم و باید ایجاد کنیم.
به عنوان مثال، فرض کنید که دادهها را از پایگاه دادهای وارد میکنید که شامل تراکنشهای فروش است. هر تراکنش فروش دارای ستونهای زیر است:
- شناسه سفارش یا order ID
- شناسه محصول یا Product ID
- مقدار یا Quantity
- قیمت واحد یا Unit Price
توجه داشته باشید که ستونی برای کل مبلغ فروش برای هر سفارش وجود ندارد. به شکل زیر توجه کنید:

برای آموزش و یادگیری DAX می توانید همین مساله را حل کنیم و یک ستون محاسبه شده که قیمت واحد را در مقدار ضرب می کند، ایجاد کنیم. برای ایجاد ستون جدید روی نام جدول مطابق شکل زیر کلیک راست کرده و دومین گزینه یعنی New Column را انتخاب کنید.

یک نواری ظاهر می شود که در آن می توان فرمول ستون جدید را مشخص کرد:

متن پیش فرض “Column =” را با متن مثال زیر جایگزین کنید:
Total Price = 'Sales OrderDetails'[Quantity] * 'Sales OrderDetails'[Unit Price]
بعد از اجرای کد فوق ستون جدید با نام Total price در جدول مشخص است:

محاسبه درست برای مثال در ردیف اول 12*14 برابر 168 در ستون Total Price نمایش داده شده است و این محاسبه در هر سطر انجام شده است.
انواع روشهای ایجاد ستون جدید
سه راه برای ایجاد ستون جدید وجود دارد:
- قبل از فراخوانی داده ها: برای مثال، با اضافه کردن ستون جدید به یک view در یک پایگاه داده رابطهای، زمانی که دادهها را دریافت میکنید، ستون را در کوئری منبع ایجاد کنید.
- بعد از فراخوانی و قبل از load داده ها در جداول Power BI: یک ستون در Power Query ایجاد کنید.
- بعد از Load کردن داده ها در Power BI: با استفاده از زبان DAX در Power BI Desktop یک ستون محاسبه شده ایجاد کنید. (مثال بالا)
روش اول ایجاد ستون جدید
هنگامی که داده ها را از منبع داده استخراج می کنید، می توانید یک ستون محاسبه شده ایجاد کنید. هر منبع داده تکنیک متفاوتی برای این عمل خواهد داشت. به عنوان مثال، اگر با استفاده از یک view که به زبان SQL نوشته شده است، دادهها را از یک منبع داده رابطهای استخراج میکنید، مانند مثال زیر خواهد بود:
CREATE VIEW OrdersWithTotalPrice
AS
SELECT unitprice, qty, unitprice * qty as TotalPrice
FROM sales.salesorders
روش دوم ایجاد ستون جدید
استفاده از Power Query برای ایجاد ستون جدید یکی از بهترین روشهاست، عملا نیاز به تغییر در منبع داده و view ندارد و معمولا کارآمدتر از ایجاد ستون جدید در زبان DAX است. برای این کار طبق شکل زیر به منوی Add column رفته و گزینه Custom column را انتخاب می کنید:

حال می توانیم ستون جدید را در کادر شکل بالا ایجاد کنید.
روش سوم ایجاد ستون جدید
به ابتدای مقاله بازگردید، جایی که استفاده از DAX برای ایجاد ستون جدید آموزش داده شد.
منابع: سایت مایکروسافت
برای مشاهده سایر آموزشهای Power BI به اینجا مراجعه بفرمایید.
جامع و و بسیار کاربردی
سلام و ممنونم آقای رسولی عزیز