شبكة تعلم مع ناو

ما نتيجة العمليات الحسابية التي تحتوي على NULL؟

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

حتى الضرب في صفر لا يحول NULL تلقائيًا إلى صفر في هذا السياق. من المهم التمييز بين غياب المعلومة ووجود معلومة قيمتها صفر. إذا كان رسم الشحن صفرًا فعلًا، يمكن حساب الإجمالي بصورة طبيعية. أما إذا لم يُعرف بعد، فظهور NULL في الإجمالي يعكس هذا الغياب. إعطاء الناتج اسمًا مستعارًا لا يغير سلوك الحساب ولا يعوض القيمة الناقصة بأي عدد.

مثال

SELECT 50 + NULL AS unknown_total,
       50 + 0 AS known_total,
       0 * NULL AS unknown_product;

الناتج الأوسط 50، بينما تكون نتيجة التعبيرين الآخرين NULL.

باختصار: NULL تنتقل إلى ناتج الحساب، ولا تعني صفرًا حتى عند الجمع أو الضرب.

هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.

اختبر نفسك

خمسة أسئلة سريعة، مع الإجابة والشرح بعد كل سؤال.