$bitOr (أو البتات المنطقي)

آخر تحديث: 2026-10-09

$bitOr (أو البتات المنطقي)

ينفذ $bitOr عملية OR المنطقية على مستوى البت على الأعداد الصحيحة. متاح منذ MongoDB 6.3، ويقبل مصفوفة من الأعداد الصحيحة (أو رقمًا واحدًا). يُستخدم لدمج بتات الأعلام أو دمج الصلاحيات، مثل تجميع عدة بتات صلاحية في عدد صحيح واحد. أي وسيطة فارغة أو مفقودة تُنتج null؛ ويجب أن تكون العوامل من نوع int32 أو int64، بينما ترمي الأنواع الأخرى خطأً. حيث يقرأ $bitAnd البتات، يضبطها $bitOr، لذا يغطيان معًا قراءة وكتابة قناع البتات.

الفئةالرياضيات
إصدار MongoDB6.3+
لغة المثالmongosh (الطرفية)

📝 الصيغة

{ $bitOr: [ <integer1>, <integer2>, ... ] }

⚙️ المعلمات

عدد صحيحأعداد صحيحة int32 أو int64، أو تعبيرات تُحلّ إليها؛ اثنان على الأقل.

القيمة المرجعة:العملية OR على مستوى البت لجميع المعاملات؛ null عندما يكون null أو مفقودًا

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// $bitOr: دمج بتات صلاحيات القراءة والكتابة
db.users.aggregate([
  { $project: {
      combined: { $bitOr: ['$permRead', '$permWrite'] }
  } }
])

المخرجات:

{ '_id': 1, 'combined': 6 }
{ '_id': 2, 'combined': 3 }

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qكيف يختلف $bitOr عن $bitAnd؟
A$bitOr يضبط البت إلى 1 عندما يكون لدى أي عامل؛ $bitAnd يُبقيه فقط عندما يكون لدى الاثنين.
Qهل يمكن لـ $bitOr دمج الصلاحيات؟
Aنعم، طبّق OR على بتات الصلاحيات معًا لدمجها في عدد صحيح واحد.
Qماذا يُرجع $bitOr لـ null؟
Aأي وسيطة فارغة أو مفقودة تجعل النتيجة null.
Web-Tutorial.com

فريق Web-Tutorial التقني

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

100%