نکات سریع: افزودن مقادیر صفر پیشرو به عدد صحیح (بالشتک) با DAX و پرس و جو

ساخت وبلاگ

Quick Tips: Adding Leading Zero to Integer Values (Padding) with DAX and Power Query

مواردی وجود دارد که می خواهیم صفر پیشرو را به یک رقم اضافه کنیم ، مانند نشان دادن 01 به جای 1 ، 02 به جای 2 و غیره. ما دو گزینه برای انجام این کار در Power BI داریم ، آن را در پرس و جو برق یا انجام آن با DAX انجام می دهیم.

اضافه کردن صفر پیشرو در پرس و جو قدرت

روش اول انجام آن در پرس و جو با استفاده از عملکرد Text. PadStart () است.

در اینجا نحوه نحو عملکرد آمده است:

و در اینجا نحوه عملکرد عملکرد آورده شده است:

به عنوان مثال ، text. padstart ("12345" ، 10 ، "A") AAAAA12345 و Text. padstart ("1" ، 2 ، "0") را برمی گرداند.

بیایید لیستی از مقادیر عدد صحیح را بین 1 تا 20 با عبارت زیر ایجاد کنیم:

Creating a List of Integer Values Between 1 to 20 In Power Query

اکنون ما با کلیک روی دکمه To Table از برگه Transform ، لیست را به یک جدول تبدیل می کنیم:

Converting a List to a Table in Power Query

اکنون با کلیک روی ستون سفارشی از برگه Add Column از نوار روبان ، یک ستون جدید اضافه می کنیم:

Adding a New Column to a Table in Power Query

اکنون از عبارت زیر در پنجره ستون سفارشی استفاده می کنیم تا اعداد را با صفر پیشرو قرار دهیم:

Padding Integer Values with a Leading Zero

در اینجا نتایج وجود دارد:

The Results of Adding Leading a Zero

و آخرین مرحله اصلاح انواع داده ستون ها با انتخاب همه ستون ها (فشار دادن Ctrl + A) و سپس کلیک بر روی دکمه Detect Data Type از برگه Transform از روبان است.

Detecting All Columns Data Types in Power Query

در آخر ما روی Close و Apply کلیک می کنیم تا داده ها را در مدل داده بارگذاری کنیم.

Loading the Data into Data Model

اضافه کردن صفر پیشرو با DAX

من طرفدار بزرگی برای مراقبت از هر نوع فعالیت تحول در پرس و جو در قدرت هستم. اما ، در بعضی موارد ، ما می خواهیم صفر پیشرو را به یک شماره اضافه کنیم تا شماره را قالب بندی کنیم. منظور من این است که اضافه کردن صفر پیشرو به اعداد لزوماً یک فعالیت تحول نیست. اگر تعداد بین 0 تا 10 باشد ، ممکن است بخواهید نتایج یک اندازه گیری را با صفر پیشرو قرار دهید. روش زیر بدون در نظر گرفتن کار می کند. و ... بسیار ساده است. ساده تر از آنچه فکر می کنیدما فقط باید از عملکرد () Format () در DAX استفاده کنیم. خروجی عملکرد یک رشته است.

نحو توابع قالب:

و در اینجا نحوه عملکرد عملکرد آورده شده است:

الگوی قالب بندی عملکرد جایی است که تمام جادوها اتفاق می افتد. طیف گسترده ای از الگوهای قالب بندی از جمله موارد از پیش تعریف شده و قالب بندی سفارشی وجود دارد.

در اینجا نحوه برخورد صفر پیشرو با DAX آمده است:

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

Padding Numbers with a Leading Zero in DAX

اما صبر کنید ، اگر لیست اعداد ما از 0 شروع شود؟بیایید داده های نمونه خود را در Query Power تغییر دهیم تا لیست از 0 شروع شود و دوباره داده ها را در مدل بارگذاری کنیم. این چیزی است که ما می گیریم:

The Leading Zero Also Added to the 0

هوم! این به نظر خوب نمی رسد!

در اینجا راه حل در پرس و جو قدرت است:

Padding Numbers Greater than 0 with Zero in Power Query

ممکن است فکر کنید که ما می توانیم از همان منطق در DAX با استفاده از () استفاده کنیم ، که قطعاً می توانیم ، اما صبر می کنیم. من می خواهم یک ترفند بهتر به شما نشان دهم. در اینجا عبارت DAX بدون استفاده از if () است:

Padding Numbers Greater than 0 with Zero in Power Query

هر رشته فرمت می تواند حداکثر 4 بخش داشته باشد. ما می توانیم هر بخش قالب بندی را با استفاده از یک قطعه قطعه (؛) جدا کنیم. اگر رشته فرمت یک بخش داشته باشد ، در غیر این صورت برای همه مقادیر اعمال می شود ، در غیر این صورت:

  • بخش اول در مورد مقادیر مثبت اعمال می شود
  • بخش دوم در مورد مقادیر منفی اعمال می شود
  • بخش سوم در مورد صفر اعمال می شود
  • بخش چهارم برای مقادیر تهی اعمال می شود

بنابراین ، رشته فرمت بیان DAX دوم ("0#؛؛ 0") صفر پیشرو را به هر مقدار عدد صحیح اضافه می کند ، اما اگر مقدار صفر باشد ، صفر را نشان می دهد.

اگر می خواهید در مورد مدل سازی داده ها با Power BI اطلاعات بیشتری کسب کنید ، حتماً نسخه خود را از کتاب من ، مدل سازی داده های متخصص با Power BI که در چندین سیستم عامل موجود است ، دریافت کنید.

سناریوی دیگری وجود دارد که حتی ممکن است نیازی به اضافه کردن یک ستون محاسبه شده جدید با مقادیر خالی باشد. فرض کنید شما یک جدول با یک ستون شاخص دارید ، دقیقاً مانند آنچه در مثال فوق دارم و فقط می خواهم مقادیر خالی را نشان دهم. در این حالت ، من حتی نیازی به اضافه کردن یک ستون محاسبه ندارم. در واقع ، من می توانم ستون شماره را قالب بندی کنم تا مقادیر عدد صحیح خالی را نشان دهم. بیایید ببینیم که چگونه ممکن است:

  • ستون شماره را انتخاب کنید
  • از رشته قالب بندی زیر در قالب کشویی بخش قالب بندی از ابزارهای ستون از روبان استفاده کنید

Formatting Number Values with Leading Zero

این بسیار جالب است ، وقتی مقادیر را قالب می کنیم ، نوع داده را تغییر نمی دهیم. بنابراین پس از قالب بندی مقادیر ، آنها هنوز هم مقادیر عددی هستند ، که در مثال من این تعداد کامل است.

جایزه

این جایزه برای کسانی است که این مقاله را تا آخر می خوانند. آیا می دانید که می توانید با استفاده از عملکرد قالب () مانند تبدیل 20210910 به 10/09/2021 ، مقادیر تاریخ عدد صحیح را به روز تبدیل کنید؟

سیگنال های تجاری...
ما را در سایت سیگنال های تجاری دنبال می کنید

برچسب : نویسنده : عبدالله بوتیمار بازدید : <-PostHit-> تاريخ : يکشنبه 11 تير 1402 ساعت: 17:05