مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

في هذا البرنامج التعليمي ، ستتعرف على العديد من الكلمات الأساسية والوظائف في DAX Studio مع مثال استعلام محدد لكل منها.

على وجه التحديد ، ستتعرف على الكلمات الأساسية ORDER BY و START AT ، جنبًا إلى جنب مع وظائف TOPNSKIP و ADDMISSINGITEMS.

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

مثال على استعلام DAX: ORDER BY Keyword

تتيح لك الكلمة الأساسية ORDER BY فرز مجموعة بيانات.

مثال أساسي

على سبيل المثال ، باستخدام الكلمة الأساسية ORDER BY ، يمكنك فرز العمود أبجديًا.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

يمكنك أن ترى أن بيانات الصف الأول تبدأ بالحرف "أ". ترتيب الفرز الافتراضي لـ DAX Studio تصاعدي .

إذا كنت تريد أن تظهر بياناتك بترتيب تنازلي ، فاكتب DESC . لذلك في هذا المثال ، بدلاً من A ، سيبدأ عمود العلامة التجارية بحرف "W."

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

وبالمثل ، إذا كنت تريد إعادته إلى ترتيب تصاعدي ، فاكتب ASC . يمكنك أيضًا فرز عدة أعمدة مرة واحدة. يمكنك القيام بذلك عن طريق كتابة الأعمدة التي تريدها مع فصل كل عمود بفاصلة.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

مثال من العالم الحقيقي

الآن دعنا نلقي نظرة على تطبيق بسيط في العالم الحقيقي باستخدام الكلمة الأساسية ORDER BY. هذا هو نفس المثال المستخدم في البرنامج التعليمي للكلمات الرئيسية TABLE .

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

يمكنك أن ترى أن هذا الجدول يعرض 3 أعمدة. الأول هو نوع المنتج ، ويتكون من ممل وعصري. يُظهر العمود الثاني إجمالي المبيعات حسب نوع المنتج. يقوم الثالث بإرجاع النسبة المئوية للمبيعات.

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

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

صيغة هذا العمود هي نفس صيغة IF لكن بدلاً من "Trendy" و "Boring" ، سيعرض هذا العمود "1" لـ Trendy و "2" لـ Boring.

لرؤية هذا العمود في الجدول ، اكتبه تحت صيغة التقييم.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

سترى بعد ذلك أنه تمت إضافة عمود جديد ، "فرز نوع المنتج" ، إلى الجدول المكوّن من الرقمين 1 و 2.

لفرز هذا العمود ، اكتب الكلمة الأساسية ORDER BY بعد صيغة . ثم بعد اسم العمود ، اكتب إما ASC أو DESC بناءً على ترتيب الفرز الذي تريد أن يكون العمود عليه.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

مثال على استعلام DAX: START AT

الشيء التالي الذي ستتعلمه هو الكلمة الأساسية START AT .

START AT هي كلمة أساسية مهملة. لا يوصى باستخدامه لمعظم استعلامات DAX. ومع ذلك ، قد لا تزال تجد بعض رموز DAX التي تستخدم هذا. لذلك لا يزال من المهم معرفة ماهيته وفي أي الحالات يمكن استخدامه.

مثال أساسي

أولاً ، اكتب كلمة التقييم. يستخدم هذا المثال جدول المنتجات. قبل كتابة START AT ، استخدم ORDER BY أولاً ثم حدد الأعمدة التي تريد تضمينها.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة


يمكنك بعد ذلك كتابة START AT. سيتبع بناء الجملة هذا الترتيب المماثل لكيفية كتابة الأعمدة الخاصة بك ضمن ORDER BY. في هذا المثال ، سيبدأ عمود "مفتاح المنتجات" عند "2" وسيبدأ عمود العلامة التجارية عند "Contoso".

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

عندما تضغط على F5 ، يمكنك أن ترى في جدول النتائج أن الأعمدة المحددة تتبع اتجاه الاستعلام.

لنرى الآن ما يحدث عند إضافة عمود آخر. في هذه الحالة ، يجب أن يبدأ عمود اللون عند "فضي".

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

عند تشغيل هذا الاستعلام ، يمكنك أن ترى أن الإدخال الأول ضمن عمود اللون هو "أبيض". ليس مضمونًا أن النتيجة ستتبع دائمًا جميع الشروط عند استخدام START AT.

في هذا المثال ، لا يوجد مثيل في جدول المنتجات يحتوي على 2 و Contoso و Silver كلها في نفس الصف. بدلاً من ذلك ، يحاول محرك DAX إنشاء أفضل تطابق مع الاستعلام الذي قمت بإنشائه.

مثال معقد

لنلق نظرة على مثال آخر:

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

بعد التقييم ، اكتب الكلمة الأساسية ORDER BY متبوعة بالأعمدة الثلاثة المحددة. بعد ذلك ، اكتب START AT. في هذه الحالة ، يجب أن يبدأ عمود اللون عند "أحمر" ، ويجب أن يبدأ عمود "الجنس" عند "M" ، ويجب أن يبدأ عمود "مفتاح المتجر" عند "2."

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

بعد تشغيل الاستعلام ، يمكنك أن ترى أن محرك DAX بذل قصارى جهده لمطابقة المعلمات المحددة.

في النتائج ، يمكنك أن ترى أن عمودين صحيحين ، بينما يبدأ عمود Store Key عند 199 بدلاً من 2. وذلك لأن Store Key من 2 غير موجود في نموذج بيانات هذا المثال.

محرك DAX البطيء

انقر على زر توقيتات الخادم ضمن علامة التبويب الصفحة الرئيسية.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

ستظهر علامة تبويب جديدة في الأسفل. انقر فوق الزر " مسح ذاكرة التخزين المؤقت" ثم "تشغيل" الموجود في سهم التشغيل المنسدل.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

يمكنك أن ترى أن تنفيذ الاستعلام يستغرق 142 ملي ثانية من DAX Studio. إذا قمت بإزالة بناء جملة START AT وقمت بتشغيل الكود مرة أخرى ، يمكنك أن ترى أن هذا سيستغرق 11 مللي ثانية فقط للتنفيذ.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

يستغرق الاستعلام وقتًا أطول للتشغيل إذا كان هناك بناء جملة START AT لأنه يستدعي سلوكًا لمحرك DAX يسمى CallBackDataID .

START AT يجعل شفرتك بطيئة للغاية. إذا لم يكن الأمر مطلوبًا لاستخدامه ، فمن الأفضل تجنبه.

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

مثال على استعلام DAX: دالة TOPNSKIP

الشيء التالي الذي ستتعلمه في هذا البرنامج التعليمي هو وظيفة TOPNSKIP . هذه الوظيفة مشابهة لـ ، لكن لها اختلاف دقيق واحد مع معلمة إضافية. لفهم هذا الأمر بشكل أكبر ، دعنا نلقي نظرة على مثال.

TOPN مقابل TOPNSKIP

أولاً ، اكتب كلمة التقييم. بعد ذلك ، اكتب وسيطة TOPN أدناه لعرض أفضل 100 صف في جدول المنتجات.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

تم فرز هذا الجدول أيضًا وفقًا لترتيب تصاعدي فيما يتعلق بعمود مفتاح المنتج.

الآن ، استبدل TOPN بـ TOPNSKIP. في الوسيطة الثانية ، قم بتوفير عدد الصفوف التي تريد تخطيها. في هذا المثال ، تم تحديد 10.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

عند تشغيل هذا ، ستلاحظ أن عمود مفتاح المنتج يبدأ الآن عند 11 وينتهي عند 110. لاحظ أنه لا يمكنك استخدام وظيفة TOPNSKIP داخل جدول محسوب أو في نموذج بيانات جدولي.

مثال آخر

في هذا المثال التالي ، دعنا نعرض أعلى 5000 صف في جدول العملاء. تم فرز هذا الجدول بترتيب تصاعدي فيما يتعلق بعمود الجنس.

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

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

ومع ذلك ، إذا كنت تستخدم وظيفة TOPNSKIP ، يمكنك أن ترى أن الجدول لا يُرجع سوى أول 5000 صف في عمود الجنس.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

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

مثال على استعلام DAX: دالة ADDMISSINGITEMS

أخيرًا ، لنلقِ نظرة على وظيفة ADDMISSINGITEMS في DAX Studio.

عند استخدام SUMMARIZECOLUMNS ، سيحاول افتراضيًا إزالة الصفوف الفارغة من النتيجة. على سبيل المثال ، يمكننا كتابة استعلام يلخص لون المنتجات والعلامة التجارية للمنتجات وجنس العميل.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

عندما تضغط على F5 ، يمكنك أن ترى أن الجدول يعرض ثلاثة أعمدة. يتكون عمود الجنس من 3 أنواع من الجنس: ذكر وأنثى وفراغ. فارغ يمثل الشركة. يمكنك أيضًا أن ترى أنه يُعيد 333 صفاً.

ولكن إذا قمت بإنشاء عمود إجمالي المبيعات ، فسيقوم عامل التصفية SUMMARIZECOLUMNS بإزالة الصفوف التي تحتوي على قيم فارغة لإجمالي المبيعات. بدلاً من 333 صفاً ، يحتوي الجدول الآن على 323 صفاً فقط.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

هناك خياران لإعادة تلك الصفوف. الخيار الأول هو إضافة صفر بعد إجمالي المبيعات. في النتائج ، يمكنك أن ترى أن 10 صفوف ترجع قيمة صفرية لإجمالي المبيعات.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

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

لاستخدام هذه الوظيفة ، ضعها بعد التقييم. في الوسيطة الأولى ، اكتب الأعمدة. تحتاج أيضًا إلى لصق هذه الأعمدة في المعلمة groupBy الخاصة بـ SUMMARIZECOLUMNS.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

عند تشغيل هذا الاستعلام ، ستلاحظ أن الجدول يعرض الآن 333 صفاً.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

إذا قمت بفرز أعمدة إجمالي المبيعات وإزالة الصفر ، فسيعود الجدول قيمًا فارغة ضمن عمود إجمالي المبيعات.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

لذا بدلاً من الإبلاغ عن صفر ، يُرجع الجدول فارغًا للصفوف التي تمت إزالتها بواسطة الدالة SUMMARIZECOLUMNS.

باستخدام ADDMISSINGITEMS والتصفية

يمكنك أيضًا استخدام وظيفة ADDMISSINGITEMS مع . على سبيل المثال ، دعنا نقوم بتصفية الصفوف التي تحتوي على "ألعاب Tailspin". في الاستعلام ، يقول أن عمود العلامة التجارية يجب ألا يحتوي على ( <> ) Tailspin Toys.

مثال على استعلام DAX باستخدام كلمات رئيسية ووظائف مختلفة

عندما تضغط على F5 ، يمكنك أن ترى أن الجدول الآن يعرض 331 صفاً فقط. لذلك تمت إزالة هذين الصفين اللذين يحتويان على العلامة التجارية "Tailspin Toys".

خاتمة

الكلمتان الأساسيتان والوظيفتان اللتان تمت مناقشتهما في هذا البرنامج التعليمي هما المعرفة الأساسية التي تحتاجها عند إنشاء استعلامات في DAX Studio. ستكون هذه مفيدة عند التعامل مع تطبيقات العالم الحقيقي الأكثر تعقيدًا.

يعد DAX Studio أداة قوية لتنفيذ استعلامات DAX وتحليلها. من المهم معرفة أساسيات الترميز لهذا البرنامج بحيث يكون أسهل عند التعامل مع الاستعلامات المتقدمة في المستقبل.

خبراء 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 لاحتياجات إعداد تقارير الأعمال الخاصة بك.