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

การดึงเอกสารทั้งหมดจาก MongoDB Collection แบบสวยงามด้วย pretty()

Method find() ใน MongoDB ใช้ดึงเอกสารจาก Collection โดยค่า Default จะแสดงผลบนบรรทัดเดียว (Compact) หากต้องการแสดงผลแบบ Indent สวยงาม อ่านง่าย สามารถใช้ pretty() ได้ เนื้อหานี้สาธิตการใช้งาน

ตัวอย่างข้อมูลทดสอบ

> db.demo306.insertOne({"Name":"Robert","Age":21});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea7c6f8647eb59e562038") }

> db.demo306.insertOne({"Name":"David","Age":23});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea7cdf8647eb59e562039") }

> db.demo306.insertOne({"Name":"Mike","Age":25});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea7d4f8647eb59e56203a") }

> db.demo306.insertOne({"Name":"Carol","Age":26});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea7dcf8647eb59e56203b") }

Query ดึงข้อมูลพร้อม pretty()

> db.demo306.find().pretty();

ผลลัพธ์แบบสวยงาม (Indented)

{
    "_id" : ObjectId("5e4ea7c6f8647eb59e562038"),
    "Name" : "Robert",
    "Age" : 21
}
{
    "_id" : ObjectId("5e4ea7cdf8647eb59e562039"),
    "Name" : "David",
    "Age" : 23
}
{
    "_id" : ObjectId("5e4ea7d4f8647eb59e56203a"),
    "Name" : "Mike",
    "Age" : 25
}
{
    "_id" : ObjectId("5e4ea7dcf8647eb59e56203b"),
    "Name" : "Carol",
    "Age" : 26
}

ข้อมูลเพิ่มเติม

  • pretty() เป็น Method ของ Cursor ใช้ได้หลัง find(), findOne() ไม่มี pretty()
  • ใน Mongo Shell เวอร์ชันใหม่ (MongoSH) ผลลัพธ์ Default แสดงแบบ Pretty แล้ว
  • สำหรับการ Debug หรือ Export ข้อมูล ขอแนะนำใช้ bsondump หรือ Tools อื่นๆ แทน
  • pretty() ไม่ส่งผลต่อ Performance ของ Query เนื่องจากเป็นการ Format Output เท่านั้น