দুটি ক্ষেত্র নির্বাচন করতে এবং স্বতন্ত্র মান সহ একটি সাজানো অ্যারে ফেরত দিতে, $setUnion অপারেটরের সাথে সমষ্টিগত ফ্রেমওয়ার্ক ব্যবহার করুন। আসুন প্রথমে নথি-
সহ একটি সংগ্রহ তৈরি করি> db.sortedArrayWithDistinctDemo.insertOne(
... { value1: 4, value2: 5}
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5cc690b99cb58ca2b005e666")
}
> db.sortedArrayWithDistinctDemo.insertOne(
... {value1: 5, value2: 6}
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5cc690b99cb58ca2b005e667")
}
> db.sortedArrayWithDistinctDemo.insertOne(
... {value1: 7, value2: 4}
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5cc690b99cb58ca2b005e668")
} Find() পদ্ধতির সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করার জন্য নিম্নলিখিত প্রশ্ন রয়েছে -
> db.sortedArrayWithDistinctDemo.find().pretty();
এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{ "_id" : ObjectId("5cc690b99cb58ca2b005e666"), "value1" : 4, "value2" : 5 }
{ "_id" : ObjectId("5cc690b99cb58ca2b005e667"), "value1" : 5, "value2" : 6 }
{ "_id" : ObjectId("5cc690b99cb58ca2b005e668"), "value1" : 7, "value2" : 4 } দুটি ক্ষেত্র নির্বাচন করার জন্য এবং তাদের স্বতন্ত্র মান সহ একটি সাজানো অ্যারে ফেরত দেওয়ার জন্য নিম্নলিখিত প্রশ্ন রয়েছে। এখানকার ক্ষেত্রগুলি হল “value1” এবং “value2” -
> db.sortedArrayWithDistinctDemo.aggregate(
... [
... { "$group": {
... "_id": null,
... "value1": { "$push": "$value1" },
... "value2": { "$push": "$value2" }
... }},
... { "$project": {
... "_id": 0,
... "bothValues": { "$setUnion": [ "$value1", "$value2" ] }
... }}
... ]
... ); এটি নিম্নলিখিত আউটপুট তৈরি করবে। এখন বাছাই করা অ্যারেটি স্বতন্ত্র মানগুলির সাথে ফেরত দেওয়া হয় −
{ "bothValues" : [ 4, 5, 6, 7 ] }