$year (الحصول على السنة)
آخر تحديث: 2026-10-09
$year (الحصول على السنة)
يُرجع $year السنة الكاملة لتاريخ ما (مثل 2026) — أكثر مستخرجي التواريخ أساسية. غالبًا يدمج مع $month أو $week في مفاتيح تجميع متعددة المستويات، أو يخدم الأرشفة السنوية والتحليل سنة-بعد-سنة. يُرجع عددًا صحيحًا. لاحظ الفرق عن $isoWeekYear الذي يُرجع سنة أسبوع ISO وقد يختلف في الأسابيع الممتدة — فضّله للإحصاءات القائمة على الأسابيع.
| الفئة | التاريخ |
|---|---|
| إصدار MongoDB | 1.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
{ $year: { date: <date-expression>, timezone: <timezone> } }
⚙️ المعلمات
| date | مطلوب؛ تعبير التاريخ. |
|---|---|
| timezone | المنطقة الزمنية اختيارية؛ الافتراضي هو UTC. |
القيمة المرجعة:السنة كعدد صحيح؛ null إذا كان date يساوي null.
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// $year: إجماليات الطلبات حسب السنة
db.orders.aggregate([
{ $group: {
_id: { $year: { date: '$orderDate' } },
total: { $sum: '$amount' }
} }
])
المخرجات:
{ "_id": 2026, "total": 892000 }
{ "_id": 2025, "total": 764000 }
📌 ملاحظات
- يُرجع السنة الكاملة من أربعة أرقام
- السجلات ذات التاريخ الفارغ تقع في دلو فارغ عند التجميع
- استخدم $isoWeekYear لا $year لإحصاءات الأسابيع الممتدة
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qكم عدد أرقام السنة؟
Aأربعة أرقام، مثل 2026.
Qمتى يختلف عن $isoWeekYear؟
Aفي أسابيع ISO الممتدة حول رأس السنة، قد تختلف السنوات بواحد.
Qهل يمكن استخدامه للأرشفة السنوية؟
Aنعم — صفِّ أو جمّع حسب $year عبر $match أو $group.