ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
في هذه المدونة ، سنناقش بيان CASE الذي يمكنك استخدامه للتعامل مع عمليات منطقية متعددة. سنناقش أيضًا وظيفة ISNULL SQL التي ستسمح لك بإرجاع قيمة الاستبدال في حالة وجود تعبيرات لها قيمة NULL .
تعد عبارة CASE و ISNULL مفيدة جدًا في العمل مع الأكواد التي تتطلب الكثير من العمليات المنطقية وللاستبدال السريع للقيم الثابتة أو المحددة للتعبير.
إن جملة CASE في SQL تشبه استخدام جملة IF ELSE . ومع ذلك ، فمن المرجح أن يكون مشابهًا لبيان SWITCH الذي نستخدمه في DAX . من ناحية أخرى ، فإن الدالة ISNULL مخصصة لاستبدال قيمة NULL بقيمة معينة تريد استخدامها.
جدول المحتويات
استخدام جملة CASE في SQL
لنفترض أن لدينا عمودي ProductName و Sales Amount .
ثم نريد إنشاء عمود إضافي يسمى الوصف .
نريد أيضًا إضافة عبارات منطقية تعرض " رخيص " إذا كان مبلغ المبيعات أقل من أو يساوي 5 ، ثم " ليست رخيصة جدًا " بين 6 و 100 . إذا كانت القيمة أكبر من مائة ، فسيتم عرض " غالي الثمن ".
في هذا المثال ، استخدمنا عبارة SELECT لتحديد العمود الذي نريد عرضه. بعد ذلك ، لدينا بيان CASE الذي يحتوي على العمليات المنطقية التي ذكرناها سابقًا.
عند استخدام عبارة CASE ، يتم دائمًا استخدام عبارات WHEN و THEN للإشارة إلى العمليات المنطقية التي نريد تنفيذها في العمود المحدد. عبارة ELSE مخصصة لتعيين قيمة افتراضية إذا لم يتم استيفاء مجموعة العمليات المنطقية.
في نهاية بيان CASE ، لدينا END AS واسم العمود بجواره. سيؤدي هذا إلى إنشاء عمود جديد يسمى الوصف بقيم تستند إلى العمليات المنطقية التي أضفناها في بيان CASE .
استخدام دالة ISNULL SQL
وظيفة ISNULL للتحقق مما إذا كانت هناك أي قيم فارغة في عمود محدد واستبدالها بأي قيمة محددة. الآن دعنا نتخيل أن لدينا الأعمدة التالية بقيم NULL .
في المثال أعلاه ، يتم استبدال جميع القيم NULL بقيم " غير معروفة ". يتم استخدام سطور التعليمات البرمجية التالية لإنشاء هذا المثال.
عند استخدام دالة ISNULL SQL ، يجب أن تبدأ بتحديد العمود MiddleName باستخدام جملة SELECT .
بعد ذلك ، يجب عليك استخدام دالة ISNULL للتحقق من عمود MiddleName المحدد داخل الأقواس واستبدال أي قيمة NULL فيه بقيمة " Unknown ".
وظيفة AS هي لإنشاء عمود جديد وهو في هذه الحالة هو MiddleName_New .
لاحظ أن دالة ISNULL لن تحل محل القيم NULL إلا إذا كانت قيمة معينة لا تساوي NULL . ثم ستعيد نفس القيمة من العمود الذي حددته في دالة ISNULL .
بعد ذلك ، سأستخدم دالتَي CASE و ISNULL في SSMS لترى كيف تعمل بالفعل.
بيان CASE في SSMS
لنبدأ بتحديد عمود الاسم الأول من الشخص . لاحظ أنه في هذا المثال ، ليس من الضروري تحديد عمود. هذا فقط للرجوع اليها.
بعد إحضار هذا العمود ، دعنا ننشئ عمودًا يعرض القيم سواء كان الاسم الأول هو Kim أم لا باستخدام جملة CASE . للقيام بذلك ، ما عليك سوى اتباع المثال أدناه.
في نموذج التعليمات البرمجية أعلاه ، أضفنا شرطًا باستخدام عبارة CASE حيث إذا كان الاسم الأول يساوي " Kim " ، فسيتم عرض " نعم " وإذا لم يكن كذلك ، فسيتم عرض " لا " بدلاً من ذلك.
في هذا المثال ، قمت أيضًا بإنشاء عمود جديد باسم " IsKim " باستخدام وظيفة END AS . انظر المثال أدناه للنتيجة.
لنحصل الآن على مثال آخر باستخدام عبارة CASE عن طريق تطبيق بعض الشروط على عمود TaxAmt من جدول Sales.SalesOrderHeader .
أولاً ، دعنا نحضر أهم 100 عمود من Sales.SalesOrderHeader باستخدام سطر التعليمات البرمجية التالي وابحث عن عمود TaxAmt .
بعد ذلك ، لنبدأ في تطبيق الشروط لعمود TaxAmt باستخدام بيان الحالة باستخدام المثال أدناه.
على غرار المثال السابق ، بدأنا بتحديد العمود الذي نريد تطبيق شروطنا عليه - في هذه الحالة ، إنه عمود TaxAmt .
ثم في بيان الحالة ، أضفنا شروطًا حيث إذا كانت TaxAmt أقل من أو تساوي 500 ، فسوف تعرض القيمة " مثالي ". إذا كانت TaxAmt أقل من 2000 أو تساويها ، فسيتم عرض القيمة " Okay ".
بالإضافة إلى ذلك ، إذا لم يتم استيفاء الشروط ، فسيتم عرض القيمة " غير جيدة " . في نهاية البيان ، قمت بإنشاء عمود جديد باسم TaxClass .
هذه هي الطريقة التي نستخدم بها بيان CASE في SQL . لاحظ أنه يمكنك تعيين العديد من الشروط كما تريد. فقط تأكد من استخدام عبارات WHEN و THEN بالإضافة إلى وظيفة END AS لإنشاء عمود جديد حيث سيتم عرض النتائج.
وظيفة ISNULL SQL في SSMS
في هذا المثال ، سأستخدم نفس الجدول من المثال السابق. ثم سأوضح كيف يمكنك استخدام هذه الوظيفة لاستبدال القيم NULL ضمن عمود CurrencyRateID .
بعد تحديد الجدول من المثال أعلاه ، يمكننا رؤية القيم الخالية تحت عمود CurrencyRateID . الآن أريد استبدال هذه القيم الفارغة بـ " 1 ". للقيام بذلك ، راجع المثال أدناه.
لتغيير قيم NULL في عمود معين ، نحتاج أولاً إلى تحديد العمود الذي يحتوي على قيم NULL. في هذه الحالة ، يكون CurrencyRateID . ثم سنستخدم الدالة ISNULL ونحدد العمود الذي سيتم التحقق منه بواسطة وظيفة ISNULL ، وهو CurrencyRateID .
نحتاج أيضًا إلى الإعلان عن قيمة الاستبدال التي نريد استخدامها - في هذا المثال استخدمت " 1 ". أخيرًا ، سنضيف وظيفة AS لإنشاء عمود جديد يسمى NewRate .
نتيجة لذلك ، تم استبدال جميع القيم NULL بـ " 1 " ضمن عمود NewRate ، وتلك التي لا تحتوي على قيمة NULL بقيت كما هي. بالإضافة إلى ذلك ، يمكنك أيضًا تغيير قيمة NULL بعمود. يمكنك القيام بذلك باتباع المثال أدناه.
باستخدام نفس الصيغة من المثال السابق ، أضفنا للتو SalesOrderID بجوار CurrencyRateID كمرجع لدينا قبل وظيفة ISNULL . ثم قمنا بتغيير قيمة الاستبدال باستخدام SalesOrderID . ستتحقق هذه العبارة ببساطة من القيم الخالية ضمن CurrencyRateID وستستبدلها بالقيم من عمود SalesOrderID .
خاتمة
باختصار ، لقد تعلمت كيفية استخدام جملة CASE ودالة ISNULL جنبًا إلى جنب مع بناء الجملة الصحيح في SQL . تعلمت أيضًا أنه يمكنك تضمين العديد من الشروط المنطقية في بيان CASE كما تريد. فقط لاحظ أن بيان CASE مشابه لـ SWITCH أو بيان IF ELSE .
بالإضافة إلى دالة ISNULL ، تعلمت أن هناك طرقًا مختلفة لاستبدال قيمة NULL في استخدام هذه الوظيفة ، والتي تكون عن طريق استخدام قيمة ثابتة أو عمود.
أتمنى لك كل خير،
حافظ
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.
في هذا البرنامج التعليمي للغة ترميز DAX ، تعرف على كيفية استخدام وظيفة الإنشاء وكيفية تغيير عنوان القياس ديناميكيًا.
سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.
في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.
أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.
تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.
سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX في توفير النتائج.
إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.
ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته