التعبيرات المتداخلة: بيئات Power Query

في هذا البرنامج التعليمي ، ستتعرف على التعبيرات المتداخلة والكائنات والبيئات في Power Query . سيتم استخدام التعبيرات والمتغيرات المتداخلة لمناقشة كيفية عمل البيئات والمساعدة في إنشاء البيانات. ستتعلم أيضًا كيفية التعامل مع السيناريوهات الشائعة عند تحويل الكائنات المتداخلة.

جدول المحتويات

تكوين تعبيرات متداخلة

يتم تعريف التعبيرات على أنها صيغة تستخدم لبناء القيمة.

التعبيرات المتداخلة: بيئات Power Query

يتم إنشاء التعبير في شريط الصيغة من التعبيرات الفرعية. تمثل الحرفان 1 و 2 تعبيرات فرعية للتعبير الأصلي.

يتم تعريف المتغيرات على أنها قيم مسماة. هذا نموذج سجل.

التعبيرات المتداخلة: بيئات Power Query

إذا فتحت نافذة المحرر المتقدم ، يمكنك رؤية المتغيرات المستخدمة في الاستعلام.

التعبيرات المتداخلة: بيئات Power Query

تمثل كل من المتغيرات a و b و c قيمة ناتجة عن تعبير ستجده غالبًا بعد علامة التساوي. تشكل جميع المتغيرات داخل التعبير الأصلي ، وهو السجل نفسه ، بيئة ذلك السجل. ضمن تلك البيئة ، يجب أن يكون كل متغير فريدًا.

لذلك إذا أضفت متغيرًا آخر يسمى c ، فسترى رسالة خطأ أسفل نافذة المحرر المتقدم.

التعبيرات المتداخلة: بيئات Power Query

التعبيرات المتداخلة: بيئات Power Query

يمكن للسجل الوصول إلى جميع التعبيرات الفرعية الخاصة به باستخدام المعرفات أو أسماء المتغيرات. ومع ذلك ، بالنسبة للتعبيرات المتداخلة داخل السجل ، تختلف كل بيئة لأنها تستطيع الوصول إلى جميع المتغيرات الأخرى في السجل باستثناء نفسها.

في هذا المثال ، يمكنك أن ترى أن المتغير c يشير إلى نفسه.

التعبيرات المتداخلة: بيئات Power Query

إذا ضغطت على "تم" ، فستتلقى رسالة خطأ.

التعبيرات المتداخلة: بيئات Power Query

إذا قمت باستخراج قيمة c عن طريق إضافة عامل تشغيل الوصول إلى العنصر ، فستحصل على نتيجة. يمكنك أيضًا الحصول على نفس النتيجة باستخدام تعبير let لأنه يتم تطبيق نفس القواعد عليه.

التعبيرات المتداخلة: بيئات Power Query

فهم التعبيرات المتداخلة في بيئة

هذا مثال آخر على قيمة السجل.

التعبيرات المتداخلة: بيئات Power Query

إذا فتحت نافذة المحرر المتقدم ، يمكنك أن ترى أن المتغيرين أ و ب يشتركان في نفس البيئة التي هي البيئة الخارجية. ستلاحظ أيضًا أن المتغيرات x و y و z هي تعبيرات فرعية للتعبير الأصلي a .

التعبيرات المتداخلة: بيئات Power Query

يمكن لكل متغير الوصول إلى جميع المتغيرات الأخرى داخل السجل المتداخل باستثناء أنفسهم. يمكنك استدعاء متغير موجود في بيئة مختلفة. في هذا المثال ، يمكنك أن ترى أن z يشير إلى b الموجود في البيئة الخارجية.

التعبيرات المتداخلة: بيئات Power Query

يمكن للمتغيرات x و y و z الوصول إلى b لأن b جزء من بيئة التعبير الأصلي الخاصة بهم. يمكنك أيضًا الحصول على نفس المتغير ولكن في بيئات مختلفة.

في هذا المثال الآخر ، يمكنك أن ترى أن السجل الداخلي والخارجي لهما متغير x .

التعبيرات المتداخلة: بيئات Power Query

يجب أن تكون المتغيرات فريدة في بيئتها الخاصة. سيتم استخدام أقرب x المخصصة للمتغير. في نموذج الاستعلام هذا ، يتم استخدام x الداخلي لأنه أقرب من منظور السجل أ .

التعبيرات المتداخلة: بيئات Power Query

في هذا الاستعلام الآخر ، يتم استخدام أقرب x الأقرب إلى المتغير b في التعبير.

التعبيرات المتداخلة: بيئات Power Query

يمكن أن يشير المتغير الخارجي b إلى المتغير x داخل التسجيلة a باستخدام عامل الوصول إلى العنصر. تحتاج إلى الرجوع إلى المتغير a ثم الوصول إلى x باستخدام مجموعة من الأقواس المربعة. بنفس الطريقة ، يمكن أن يشير التسجيل a إلى المتغير x داخل المتغير b .

التعبيرات المتداخلة: بيئات Power Query

عندما يتم دمج بيئة السجل المتداخل a مع متغيرات من التعبير الأصلي ، يؤدي ذلك إلى حدوث تعارض لأن x موجود مرتين ويجب أن تكون جميع المتغيرات فريدة في بيئتها. نظرًا لأن المتغير لا يمكن أن يشير إلى نفسه ، يتم حل التعارض بالرجوع إلى x الخارجي.

التعبيرات المتداخلة: بيئات Power Query

حل السيناريوهات الشائعة

السيناريو الشائع هو تحويل الكائنات المتداخلة. للتوضيح ، سيتم استخدام هذا الجدول.

التعبيرات المتداخلة: بيئات Power Query

إذا كنت تريد استرداد قيمة من الجدول الخارجي ووضعها في الجدول المتداخل ، فهناك طريقتان لتحقيق ذلك. الطريقة الأولى هي استخدام خيار إضافة عمود مخصص .

انقر فوق رمز الجدول في الزاوية اليسرى العلوية من جزء المعاينة وحدد إضافة عمود مخصص.

التعبيرات المتداخلة: بيئات Power Query

أدخل Temp كاسم عمود وأدخل عنصرًا نائبًا في صيغة العمود المخصصة . بمجرد الانتهاء ، اضغط على موافق.

التعبيرات المتداخلة: بيئات Power Query

داخل شريط الصيغة ، استبدل كل تعبير بوظيفة مخصصة عن طريق إضافة عمود إلى الجدول المتداخل. ابدأ المنطق لوظيفة مخصصة وقم بتسميتها OT للجدول الخارجي. ثم أضف علامة go-to.

بعد ذلك ، استخدم الدالة Table.AddColumn لإضافة عمود. ارجع إلى الجدول الموجود في الجدول الخارجي الموجود في عمود الأسماء. ثم أدخل اسم عمود جديد.

في هذا المثال ، اسم العمود المستخدم هو "الإيرادات" . أدخل كل دالة للحصول على قيم كل صف في عمود الحصول على الإيرادات.

التعبيرات المتداخلة: بيئات Power Query

إذا قمت بالنقر فوق المساحة الموجودة داخل خلية صف في عمود Temp ، فستحصل على معاينة للجدول المتداخل أسفل جزء المعاينة. سترى أن كل صف له قيمة الجدول الخارجي.

التعبيرات المتداخلة: بيئات Power Query

استخدام المتغيرات لتخزين القيم

الطريقة الثانية لتحويل الكائنات المتداخلة هي استخدام المتغيرات لتخزين القيم. أولاً ، أضف عمودًا مخصصًا وأدخل Temp2 كاسم عمود. بالنسبة للصيغة ، استخدم تعبير let لتخزين القيم في المتغيرات.

أدخل اسمحوا ثم اكتب اسم متغير. في هذا المثال ، اسم المتغير هو myR . بعد ذلك ، قم بمساواة المتغير بعمود الحصول على الإيرادات. بعد ذلك ، أدخل جملة in واستخدم الدالة Table.AddColumn لإضافة عمود إلى الجدول المتداخل.

بالنسبة للمعلمة الأولى للوظيفة ، أدخل عمود الأسماء الذي يحتوي على الجداول المتداخلة. بعد ذلك ، قم بتسمية العمود الجديد "الإيرادات". استخدم كل لاستدعاء متغيرات كل صف.

التعبيرات المتداخلة: بيئات Power Query

إذا قمت بالنقر فوق المساحة الموجودة داخل خلية صف في عمود Temp2 ، فسترى أنها استردت القيم من الجدول الخارجي.

التعبيرات المتداخلة: بيئات Power Query

السيناريو الشائع الآخر هو البحث حيث لا يوجد مفتاح مشترك. في هذا السيناريو ، سيتم استخدام جدولين نموذجيين: جدول فئة وجدول منتج .

التعبيرات المتداخلة: بيئات Power Query

التعبيرات المتداخلة: بيئات Power Query

استخدم جدول الفئات كاستعلام مرحلي لتكمل سمات جدول أبعاد المنتج. نظرًا لعدم وجود مفتاح مشترك ، لا يمكن إجراء الدمج. أول شيء يجب فعله هو تضمين جدول الفئات بالكامل في استعلام جدول المنتج باستخدام إضافة عمود مخصص.

أضف عمودًا مخصصًا واكتب الفئة كاسم عمود. ثم في الصيغة المخصصة ، اتصل باستعلام الفئة.

التعبيرات المتداخلة: بيئات Power Query

بعد ذلك ، قمت الآن بتداخل جدول الفئات الكامل في كل صف من جدول المنتج.

التعبيرات المتداخلة: بيئات Power Query

عند النقر فوق المساحة الموجودة داخل خلية الصف في عمود الفئة ، يمكنك رؤية جدول الفئات الكامل في كل صف.

التعبيرات المتداخلة: بيئات Power Query

استرجاع قيمة واحدة

إذا كنت تريد استرداد قيمة واحدة فقط ، فأنت بحاجة إلى تصفية جدول الفئات وصولاً إلى صف واحد حيث يوجد تطابق لجزء من السلسلة من المنتج مع مجموعة المنتجات في جدول الفئات.

افتح مربع حوار عمود مخصص بالضغط على زر الترس بجانب التخصيص المُضاف في جزء الخطوات المطبقة.

التعبيرات المتداخلة: بيئات Power Query

في الصيغة ، أضف الدالة Table.SelectRows . بالنسبة للمعلمة الأولى ، يتم استخدام جدول الفئات. استخدمت المعلمة الثانية وظيفة Text.Contains كشرط. بالنسبة للجدول الداخلي ، تتحقق هذه الوظيفة مما إذا كان النص يحتوي على جزء من سلسلة المنتج في الجدول الخارجي.

التعبيرات المتداخلة: بيئات Power Query

عند الوصول إلى الجدول الخارجي ، ستلاحظ أن Power Query يضيف كل كلمة أساسية داخل شريط الصيغة. إنها دالة أحادية تأخذ الشرطة السفلية ( _ ) كمتغير مجهول. ومع ذلك ، نظرًا لأنك تقوم بالوصول إلى عمود فقط ، فيمكن حذفه.

التعبيرات المتداخلة: بيئات Power Query

إذا قمت بالنقر فوق المساحة الموجودة داخل خلية صف ما في عمود الفئة ، فسترى الآن صفًا واحدًا في كل جدول من الجداول المتداخلة.

التعبيرات المتداخلة: بيئات Power Query

من هناك ، يمكنك استخراج قيمة للفئة بمجموعة من مشغلي الوصول إلى الصف والحقل.

ارجع إلى مربع حوار العمود المخصص وأضف عوامل التشغيل في الصيغة. للحصول على الصف الأول من الجدول ، أدخل 0 داخل مجموعة من الأقواس المتعرجة. ثم قم بإدراج اسم الحقل الفئة داخل مجموعة من الأقواس المربعة.

التعبيرات المتداخلة: بيئات Power Query

لإثبات الحل في المستقبل ، يمكنك إضافة علامة استفهام ( ؟ ) في النهاية لتغيير السلوك غير الموجود من إرجاع خطأ إلى قيمة خالية.


كيف يعمل محرر الاستعلام في
لغة LuckyTemplates M ومحرر Power Query في LuckyTemplates

خاتمة

تساعد البيئات والتعبيرات المتداخلة الاستعلام الخاص بك على إبراز قيم معينة من أكوادك لتقديم نتائج مرغوبة. يعد إدراكها أمرًا مهمًا عند كتابة الوظائف لأنك عندما تفهمها ، ستتمكن من حل سيناريوهات أكثر تقدمًا وتعقيدًا.

ميليسا

Leave a Comment

تقنية تصور LuckyTemplates: تعرف على كيفية إنشاء لوحات تصميم الخلفية

تقنية تصور LuckyTemplates: تعرف على كيفية إنشاء لوحات تصميم الخلفية

تعرف على تقنية تصور LuckyTemplates هذه حتى تتمكن من إنشاء قوالب الخلفية واستيرادها إلى تقارير LuckyTemplates الخاصة بك.

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

كيفية حفظ وتحميل ملف RDS في R.

كيفية حفظ وتحميل ملف RDS في R.

ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

في هذا البرنامج التعليمي للغة ترميز DAX ، تعرف على كيفية استخدام وظيفة الإنشاء وكيفية تغيير عنوان القياس ديناميكيًا.

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.

مقدمة لتصفية السياق في LuckyTemplates

مقدمة لتصفية السياق في LuckyTemplates

في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX ​​في توفير النتائج.

إعداد تقارير الأعمال باستخدام LuckyTemplates

إعداد تقارير الأعمال باستخدام LuckyTemplates

إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.