إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
distinct يتم استخدام الأمر للبحث عن القيم الفريدة لحقل محدد عبر مجموعة واحدة. يكون هذا الأمر مفيدا عندما تحتاج إلى تحديد مجموعة القيم المميزة لحقل دون استرداد كافة المستندات أو عندما تحتاج إلى تنفيذ عمليات مثل التصفية أو التجميع استنادا إلى قيم فريدة.
إعراب
بناء الجملة distinct الأساسي للأمر كما يلي:
db.collection.distinct(field, query, options)
-
field: الحقل الذي يتلقى القيم المميزة التي تم إرجاعها. -
query:اختياري. استعلام يحدد المستندات التي سيتم استرداد القيم المميزة منها. -
options:اختياري. خيارات أخرى للأمر .
أمثلة
فيما يلي أمثلة باستخدام نموذج بنية JSON المتوفرة.
مثال 1: البحث عن فئات مميزة في المبيعات
للعثور على المميز categoryName في salesByCategory الصفيف:
db.stores.distinct("sales.salesByCategory.categoryName")
عينة الإخراج
[mongos] StoreData> db.stores.distinct("sales.salesByCategory.categoryName")
[
{
_id: 'Discount Derby',
discounts: [
{ categoryName: 'Bath Sheets', discountPercentage: 25 },
{ categoryName: 'Tablecloths', discountPercentage: 25 },
{ categoryName: 'Drapes', discountPercentage: 25 }
]
}
]
[mongos] StoreData> db.stores.distinct("sales.salesByCategory.categoryName")
[
'Music Theory Books',
'Superfoods',
'Harmonicas',
'Garden Tools',
... 883 more items
]
مثال 2: البحث عن أسماء أحداث مميزة في أحداث الترقية
للعثور على المميز eventName في promotionEvents الصفيف:
db.stores.distinct("promotionEvents.eventName")
عينة الإخراج
[mongos] StoreData> db.stores.distinct("promotionEvents.eventName")
[
{
_id: 'Super Saver Celebration',
discounts: [
{ categoryName: 'Face Towels', discountPercentage: 25 },
{ categoryName: 'Printer Ribbons', discountPercentage: 25 },
{ categoryName: 'Chromebooks', discountPercentage: 25 }
]
}
]
مثال 3: البحث عن نسب خصم مميزة لحدث معين
للعثور على المميز discountPercentage في discounts الصفيف لحدث "البيع الصيفي":
db.stores.distinct("promotionEvents.discounts.discountPercentage", { "promotionEvents.eventName": "Incredible Discount Days" })
عينة الإخراج
[mongos] StoreData> db.stores.distinct("promotionEvents.discounts.discountPercentage", { "promotionEvents.eventName": "Incredible Discount Days" })
[
6, 17, 22, 25, 9, 15, 14,
7, 12, 19, 24, 5, 20, 10,
23, 16, 18, 21, 13, 11, 8
]
محتوى ذو صلة
- مراجعة خيارات الترحيل من MongoDB إلى Azure DocumentDB
- اقرأ المزيد حول توافق الميزات مع MongoDB