MongoDB-এ distinct() মেথড ব্যবহার করে কোনো ফিল্ডের অনন্য (unique) মানগুলো বের করা যায়, যা SQL-এর SELECT DISTINCT-এর সমতুল্য।
নমুনা ডেটা তৈরি
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"John","Age":23});
{ "acknowledged": true, "insertedId": ObjectId("5cd12759e3526dbddbbfb60b") }
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Larry","Age":25});
{ "acknowledged": true, "insertedId": ObjectId("5cd12768e3526dbddbbfb60c") }
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"David","Age":25});
{ "acknowledged": true, "insertedId": ObjectId("5cd12773e3526dbddbbfb60d") }
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Carol","Age":26});
{ "acknowledged": true, "insertedId": ObjectId("5cd1277ee3526dbddbbfb60e") }
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Sam","Age":25});
{ "acknowledged": true, "insertedId": ObjectId("5cd12793e3526dbddbbfb60f") }
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Larry","Age":25});
{ "acknowledged": true, "insertedId": ObjectId("5cd127a3e3526dbddbbfb610") }
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Carol","Age":26});
{ "acknowledged": true, "insertedId": ObjectId("5cd127aae3526dbddbbfb611") }
সব ডকুমেন্ট দেখুন
> db.distinctNameAndAgeDemo.find().pretty();আউটপুট:
{
"_id": ObjectId("5cd12759e3526dbddbbfb60b"),
"ClientFirstName": "John",
"Age": 23
}
{
"_id": ObjectId("5cd12768e3526dbddbbfb60c"),
"ClientFirstName": "Larry",
"Age": 25
}
{
"_id": ObjectId("5cd12773e3526dbddbbfb60d"),
"ClientFirstName": "David",
"Age": 25
}
{
"_id": ObjectId("5cd1277ee3526dbddbbfb60e"),
"ClientFirstName": "Carol",
"Age": 26
}
{
"_id": ObjectId("5cd12793e3526dbddbbfb60f"),
"ClientFirstName": "Sam",
"Age": 25
}
{
"_id": ObjectId("5cd127a3e3526dbddbbfb610"),
"ClientFirstName": "Larry",
"Age": 25
}
{
"_id": ObjectId("5cd127aae3526dbddbbfb611"),
"ClientFirstName": "Carol",
"Age": 26
}
SQL: SELECT DISTINCT(name) FROM collectionName WHERE age = "25" এর সমতুল্য MongoDB কোয়েরি
> db.distinctNameAndAgeDemo.distinct("ClientFirstName", {"Age": 25});
আউটপুট:
[ "Larry", "David", "Sam" ]
ব্যাখ্যা: ২৫ বছর বয়স वाले সবার অনন্য নামগুলো বের হয়েছে। Larry দুবার থাকা সত্ত্বেও একবারই আসেছে।