فرمولها و توابع تاریخ در Power BI بسیار مفید هستند و پایهای برای انجام تحلیلهای سطح بالا مانند محاسبات ماه به ماه یا سال به سال فراهم میکنند. تسلط بر فرمولها و توابع پایه تاریخ در DAX برای تحلیل دادههایی که شامل یک فیلد تاریخ هستند، ضروری است. در این مقاله، ما سعی داریم یک نمای کلی از برخی از فرمولهای پایه تاریخ در Power BI DAX ارائه دهیم که به طور متداول در کار با دادههای دارای فیلد تاریخ استفاده میشوند.
پیشنهاد مقاله: مقدمهای بر Microsoft Power BI | هر آنچه که باید بدانید
Power BI DAX مجموعهای از توابع قدرتمند تاریخ ارائه میدهد. توابع تاریخی زیر به همراه مثال به طور کامل توضیح داده میشوند:
- DAY (روز)
- MONTH (ماه)
- QUARTER (فصل)
- YEAR (سال)
- NOW (هماکنون)
- TODAY (امروز)
- DATE (تاریخ)
- DATEDIFF (تفاوت تاریخها)
برای دسترسی به دیتاستی حاوی تاریخ های نمونه در گوگل شیت کلیک کنید.
DAY (روز)
تابع DAY در DAX یک ورودی تاریخ دریافت کرده و عددی بین 1 تا 31 برمیگرداند که نمایانگر روز ماه است. به عنوان مثال، وقتی تاریخ 01/29/2024 به تابع DAY در Power BI داده میشود، عدد 29 را برمیگرداند.
تابع DAY در Power BI DAX به صورت زیر نوشته میشود:
day = DAY(<Datetime>)
ابتدا، مجموعه داده را در Power BI باز کنید. این مجموعه داده شامل یک ستون به نام date_placed
است.
- روی دکمه “New Column” در بالای صفحه کلیک کنید تا ویرایشگر فرمول باز شود.
- فرمول زیر را در ویرایشگر فرمول وارد کنید:
day = DAY(‘Sales data'[date_placed])
- کلید Enter را بزنید تا ستون جدیدی به نام
day
ایجاد شود که تعداد روزهای ماه را برای هر تاریخ در ستونdate_placed
نمایش میدهد.
حالا شما یک ستون دارید که عدد روز مربوط به تاریخهای موجود در دادههای فروش را نشان میدهد.
MONTH (ماه)
تابع MONTH در Power BI DAX یک تاریخ به عنوان ورودی میگیرد و عددی بین 1 تا 12 برمیگرداند که نشاندهنده ماه سال است. به عنوان مثال، وقتی تاریخ 01/29/2024
به تابع MONTH داده میشود، عدد 01
که مربوط به ماه ژانویه است، برگردانده میشود.
تابع MONTH در Power BI DAX سینتکس زیر را دارد:
month = MONTH(<Datetime>)
نحوه استفاده
- روی دکمه “New Column” در بالای صفحه کلیک کنید تا ویرایشگر فرمول باز شود.
- فرمول زیر را در ویرایشگر وارد کنید:
month = MONTH(‘Sales data'[date_placed])
- کلید Enter را بزنید.
پس از انجام این مراحل، یک ستون جدید به نام month
به مجموعه داده اضافه میشود که شامل عدد مربوط به ماه در هر ردیف تاریخ است.
QUARTER (فصل)
تابع QUARTER در Power BI DAX یک تاریخ به عنوان ورودی میگیرد و عددی بین 1 تا 4 برمیگرداند که نشاندهنده سهماهه (ربع) سال است که تاریخ ورودی در آن قرار دارد. تقسیمبندی سهماههها به شرح زیر است:
- 1: (ژانویه تا مارس)
- 2: (آوریل تا ژوئن)
- 3: (جولای تا سپتامبر)
- 4: (اکتبر تا دسامبر)
اگر تابع عدد 1 را برگرداند، تاریخ بین ژانویه تا مارس است. اگر عدد 2 برگردد، تاریخ بین آوریل تا ژوئن است و به همین ترتیب.
تابع QUARTER در Power BI DAX به صورت زیر است:
quarter = QUARTER(<Datetime>)
نحوه استفاده
- روی دکمه “New Column” کلیک کنید تا ویرایشگر فرمول باز شود.
- فرمول زیر را در ویرایشگر وارد کنید:
quarter = QUARTER(‘Sales data'[date_placed])
- کلید Enter را بزنید.
پس از انجام این مراحل، یک ستون جدید به نام quarter
به مجموعه داده اضافه میشود که شامل عدد مربوط به سهماهه سال برای هر تاریخ خواهد بود.
YEAR (سال)
تابع YEAR در Power BI DAX یک تاریخ به عنوان ورودی دریافت میکند و سال آن تاریخ را به صورت عدد صحیح برمیگرداند. به عنوان مثال، اگر تاریخ 2024/01/29 به تابع YEAR داده شود، عدد 2024 به عنوان سال بازگردانده میشود.
تابع YEAR در Power BI DAX به صورت زیر است:
year = YEAR(<Datetime>)
نحوه استفاده
- روی “New Column” کلیک کنید تا ویرایشگر فرمول باز شود.
- فرمول زیر را در ویرایشگر وارد کنید:
year = YEAR(‘Sales data'[date_placed])
- کلید Enter را بزنید.
با این کار، یک ستون جدید به نام year
به مجموعه داده اضافه میشود که شامل سال مربوط به هر تاریخ خواهد بود.
توابع NOW و TODAY در Power BI DAX تاریخ فعلی را در قالب DateTime برمیگردانند. این توابع ورودی یا پارامتری ندارند. تفاوت اصلی بین این دو تابع این است که NOW زمان دقیق را همراه با تاریخ بازمیگرداند، در حالی که TODAY همیشه ساعت 12:00 AM را همراه با تاریخ بازمیگرداند.
سینتکس توابع NOW و TODAY به صورت زیر است:
current_date = NOW()
current_date = TODAY()
نحوه استفاده
- در Power BI روی “New Column” کلیک کنید.
- فرمولهای زیر را وارد کنید:
current_date_1 = TODAY()
current_date_2 = NOW()
این کار دو ستون جدید به نامهای current_date_1
و current_date_2
ایجاد میکند که یکی تاریخ جاری و دیگری تاریخ و زمان جاری را نمایش میدهد.
DATE
تابع DATE در Power BI DAX سه پارامتر ورودی (سال، ماه و روز) دریافت میکند و یک مقدار تاریخ واحد برمیگرداند.
date = DATE(<year>, <month>, <day>)
نحوه استفاده
- مانند قبل، روی “New Column” کلیک کنید.
- فرمول زیر را برای ترکیب ستونهای
year
،month
وday
وارد کنید:
date = DATE(‘Sales data'[year], ’Sales data'[month], ’Sales data'[day])
این دستور یک ستون جدید به نام date
ایجاد میکند که حاوی مقادیر تاریخ به صورت واحد است.
DATEDIFF
تابع DATEDIFF تفاوت بین دو مقدار تاریخ را محاسبه میکند. این تفاوت میتواند بر اساس ثانیه، دقیقه، ساعت، روز، هفته، ماه، فصل یا سال باشد.
diff = DATEDIFF(<start date>, <end date>, <interval>)
نحوه استفاده
- برای محاسبه تفاوت بین دو تاریخ، روی “New Column” کلیک کنید و فرمول زیر را وارد کنید:
diff = DATEDIFF(‘Sales data'[date_placed], ’Sales data'[current_date], DAY)
این فرمول تفاوت بین دو تاریخ را بر حسب روز محاسبه میکند.
نتیجهگیری
Power BI DAX مجموعهای قدرتمند از توابع مرتبط با زمان و تاریخ ارائه میدهد که به کاربران اجازه میدهد تحلیلهای پیشرفتهای مانند محاسبات سال به سال انجام دهند. در این مقاله، ۱۰ فرمول پایه تاریخ میلادی در DAX را بهطور کامل بررسی کردیم و با استفاده از تصاویر، نحوه استفاده از آنها را نمایش دادیم. همچنین میتوانید فایل Power BI و دیتاست رایگان را دانلود کنید تا خودتان تمرین کرده و مهارتهای خود را بهبود بخشید.
برای مشاهده توابع تبدیل تاریخ میلادی به شمسی در Power BI با فرمول نویسی DAX کلیک کنید.