ใน MongoDB shell สามารถใช้คำสั่ง var ประกาศตัวแปรแล้วนำไปใช้ในคิวรีได้ สร้างคอลเลกชันตัวอย่าง:
> db.demo327.insertOne({"FirstName":"Chris","LastName":"Brown"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e516952f8647eb59e562076") }
> db.demo327.insertOne({"FirstName":"David","LastName":"Miller"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e51695af8647eb59e562077") }
> db.demo327.insertOne({"FirstName":"John","LastName":"Doe"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e516962f8647eb59e562078") }
> db.demo327.insertOne({"FirstName":"John","LastName":"Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e516968f8647eb59e562079") }
แสดงข้อมูล:
> db.demo327.find();
ตั้งค่าตัวแปรและใช้ในคิวรี:
> var name="John";
> db.demo327.find({"FirstName":name});
ผลลัพธ์ (เจอ 2 เอกสาร):
{ "_id" : ObjectId("5e516962f8647eb59e562078"), "FirstName" : "John", "LastName" : "Doe" }
{ "_id" : ObjectId("5e516968f8647eb59e562079"), "FirstName" : "John", "LastName" : "Smith" }
ข้อมูลเพิ่มเติม
- ตัวแปร
varมี scope อยู่ใน shell session เดียวกัน - ใช้ได้กับค่าทุกประเภท: string, number, object, array, regex
- ตัวอย่าง:
var minAge = 18; db.users.find({age: {$gte: minAge}}) - ใน application code (Node.js, Python, etc.) ใช้ตัวแปรของภาษานั้นแทน
- MongoDB shell รองรับ JavaScript syntax เต็มรูปแบบ