بررسی Duplicate و Reference در Power Query
اگر با جداول یا کوئری ها در Power Query کار می کنید احتمالا دو گزینه Duplicate و Reference را مشاهده کرده اید. فهم تفاوت میان این دو قابلیت ساده و پر اهمیت است و با یک مثال به بررسی آنها در Power BI میپردازیم:
Duplicate
مطابق مطالب گذشته، یک دیتاست شامل اطلاعات فروش کشورهای مختلف را به Power BI ایمپورت میکنیم. دیتاست ما مطابق با شکل زیر میباشد:
سطرهای اضافه ی بالای جدول را پاک میکنیم و با استفاده از دستور Use First Row As Header ، عناوین ستون ها را در جای خودش قرار میدهیم : (به نوار سبز رنگ توجه کنید.)
اکنون میخواهیم از جدول sale (جدول اصلی) یک Duplicate بگیریم،روی جدول Sale کلیک راست کرده و گزینه Duplicate را انتخاب میکنیم :
با انتخاب گزینه Duplicate تمامی تغییراتی که بر روی جدول اصلی (sale) انجام دادیم، بر روی جدول Duplicate شده نیز اعمال شده است. اما از این مرحله به بعد، هرکدام از جداول به صورت مستقل عمل میکند و هر تغییری بر روی هر کدام از آنها ، بر روی دیگری تاثیری ندارد، برای مثال در جدول sale-copy مقادیر Region را بر روی Asia فیلتر میکنیم (مشاهده کنید که در جدول sale این تغییر اعمال نمیشود) :
با مشاهده قسمت Applied Steps در جدول sale-copy متوجه این موضوع میشوید که امکان تغییر آدرس source وجود دارد. این حالت برای زمانی مفید است که شما ، برای مثال، بارگذاری داده را از طریق صفحات وب انجام میدهید و در هر صفحه از وب، داده های متفاوت اما با ساختار یکسان وجود دارند و شما از طریق اعمال تغییرات ابتدایی در جدول اصلی ، سایر جداول را از صفحات دیگر ایمپورت کنید. بنابراین جدول اصلی را کپی میکنید و در ادامه فقط source موجود در هر صفحه جدید وب را تغییر میدهید : (در مثال ما ، فایل اکسل انتخاب شده است)
Reference
Reference هم مشابه Duplicate یک جدول کپی از جدول اصلی ایجاد میکند.برای ایجاد یک جدول از طریق Reference ، بر روی جدول sale کلیک راست کرده و گزینه Reference را انتخاب کنید:
با انتخاب گزینه Reference تمامی تغییراتی که بر روی جدول اصلی (sale) انجام دادیم، بر روی جدول Reference نیز اعمال میشود. اگر از جدول اصلی مقدار Region را برابر با Europe قرار دهیم، در جدول Reference هم این تغییر اعمال میشود. (مشاهده کنید که در جدول sale-reference این تغییر اعمال میشود) :
توجه کنید که این تغییرات یک طرفه میباشد و همیشه از سمت جدول اصلی به جدول reference شده اعمال میگردد و نه برعکس.
حالت Reference برای مواقعی مناسب است که مثلا میخواهید مقادیری را به صورت جدا در چند جدول داشته باشید. برای مثال با انجام دو بار عمل Reference دو جدول جدا ایجاد میکنیم.هر کدام از این جداول Reference شده را بر روی یکی از حالت ها فیلتر میکنیم(مثلا یکی را بر روی آسیا و دیگری را بر روی اروپا). در ادامه ، جدول اصلی را از فیلد Item Type بر روی Meat فیلتر میکنیم.
در نتیجه ما دو جدول داریم که مقادیر Meat را در هر کدام از دو قاره به ما نشان میدهد.
این نکته را هم در نظر داشته باشید که امکان تغییر آدرس source وجود ندارد.دلیل این کار این است که جدول Reference شده مستقیما به جدول اصلی متصل میباشد و نیازی به تغییر آن نیست. (با مشاهده قسمت Applied Steps در جدول sale-Reference)
دیدگاه ها
دیدگاه شما