عند مقارنة عمودين باستخدام المساواة العادية، تؤدي مشاركة NULL إلى نتيجة غير معروفة. قد لا يناسب ذلك مراجعة البيانات التي تعتبر غياب القيمتين حالة تطابق. توفر MySQL العامل <=> للمساواة الآمنة مع القيم المفقودة، بحيث يعطي نتيجة واضحة حتى عندما يحتوي أحد الطرفين أو كلاهما على NULL.
يعيد هذا العامل واحدًا إذا كانت القيمتان متساويتين أو كانتا مفقودتين معًا. ويعيد صفرًا إذا كانت إحداهما مفقودة والأخرى موجودة. لذلك يفيد في مقارنة نسخة قديمة وحديثة من قيمة اختيارية، دون تحويل البيانات المفقودة إلى قيمة بديلة قد تتعارض مع قيمة حقيقية داخل المجال.
مثال
SELECT NULL <=> NULL AS both_missing,
NULL <=> 0 AS one_missing;
استخدام بديل مثل الصفر مع COALESCE ليس مكافئًا دائمًا، لأنه قد يجعل الصفر الحقيقي مساويًا للقيمة المفقودة. العامل المخصص يحافظ على التمييز بين الحالتين.
باختصار: استخدم <=> عندما تريد اعتبار قيمتي NULL متطابقتين، دون الخلط بين القيمة المفقودة وقيمة فعلية.
هل تريد تعلّم SQL خطوة بخطوة مع تمارين عملية؟ تابع مسار SQL من الأساسيات للاحتراف.