Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

คิวรี่ MongoDB นับจำนวนเรคอร์ดตามเงื่อนไขการจับคู่ (Matching Criteria)

นับจำนวนเอกสารตามเงื่อนไขด้วย count()

บทความนี้สาธิตการใช้เมธอด count() ใน MongoDB เพื่อนับจำนวนเอกสารที่ตรงตามเงื่อนไขหลายอย่างพร้อมกัน

ขั้นตอนที่ 1: สร้าง Collection และเพิ่มข้อมูลตัวอย่าง

สร้าง collection ชื่อ demo205 มีฟิลด์ id, Name, Age, isActive

> db.demo205.insertOne({ "id": "101", "Name": "", "Age": "", "isActive": false });
{ "acknowledged": true, "insertedId": ObjectId("5e3d8a3003d395bdc21346eb") }
> db.demo205.insertOne({ "id": "102", "Name": "Chris", "Age": "25", "isActive": true });
{ "acknowledged": true, "insertedId": ObjectId("5e3d8a3003d395bdc21346ec") }
> db.demo205.insertOne({ "id": "103", "Name": "", "Age": "", "isActive": false });
{ "acknowledged": true, "insertedId": ObjectId("5e3d8a3003d395bdc21346ed") }

ขั้นตอนที่ 2: แสดงข้อมูลทั้งหมด

>> db.demo205.find();

ผลลัพธ์:

{ "_id": ObjectId("5e3d8a3003d395bdc21346eb"), "id": "101", "Name": "", "Age": "", "isActive": false }
{ "_id": ObjectId("5e3d8a3003d395bdc21346ec"), "id": "102", "Name": "Chris", "Age": "25", "isActive": true }
{ "_id": ObjectId("5e3d8a3003d395bdc21346ed"), "id": "103", "Name": "", "Age": "", "isActive": false }

ขั้นตอนที่ 3: ใช้ count() กับเงื่อนไขหลายอย่าง

นับเอกสารที่ Name: "", Age: "", และ isActive: false พร้อมกัน

> db.demo205.count({
    Name: "",
    Age: "",
    "isActive": false
});

ผลลัพธ์ที่ได้

2

สรุป: count() รับ Query Object เหมือน find() และคืนค่าจำนวนเอกสารที่ตรงเงื่อนไขโดยตรง โดยไม่ต้องดึงข้อมูลทั้งหมดมา นับฝั่งแอปพลิเคชัน