Latest web development tutorials
×

MongoDB หลักสูตร

MongoDB หลักสูตร NoSQL แนะนำโดยย่อ MongoDB แนะนำโดยย่อ Window ติดตั้ง MongoDB Linux ติดตั้ง MongoDB MongoDB การแปลความหมายของแนวคิด MongoDB สัมพันธ์ MongoDB การสร้างฐานข้อมูล MongoDB ลบฐานข้อมูล MongoDB แทรกเอกสาร MongoDB การปรับปรุงเอกสาร MongoDB การลบเอกสาร MongoDB เอกสารแบบสอบถาม MongoDB ผู้ประกอบการที่มีเงื่อนไข MongoDB $type ผู้ประกอบการ MongoDB Limit & Skip MongoDB ลำดับ MongoDB ดัชนี MongoDB การรวมตัว MongoDB สำเนา MongoDB ชิ้น MongoDB สำรองและกู้คืน MongoDB หน้าจอ MongoDB Java MongoDB PHP กระจาย MongoDB PHP MongoDB PHP7

MongoDB การสอนที่ทันสมัย

MongoDB ความสัมพันธ์ MongoDB อ้างอิงฐานข้อมูล MongoDB ครอบคลุมแบบสอบถามดัชนี MongoDB การวิเคราะห์แบบสอบถาม MongoDB การดำเนินงานของอะตอม MongoDB การจัดทำดัชนีขั้นสูง MongoDB ข้อ จำกัด ของดัชนี MongoDB ObjectId MongoDB Map Reduce MongoDB ค้นหาข้อความเต็ม MongoDB นิพจน์ปกติ MongoDB เครื่องมือการจัดการ MongoDB GridFS MongoDB ชุดถาวร MongoDB การเจริญเติบโตอัตโนมัติ

MongoDB ครอบคลุมแบบสอบถามดัชนี

คำอธิบายเอกสารอย่างเป็นทางการ MongoDB ครอบคลุมแบบสอบถามต่อไปนี้เป็นแบบสอบถาม:

  • เขตข้อมูลแบบสอบถามทั้งหมดเป็นส่วนหนึ่งของดัชนี
  • ทุกเขตข้อมูลในแบบสอบถามเดียวกันผลตอบแทนดัชนี

ทั้งหมดตั้งแต่ปรากฏในเขตข้อมูลแบบสอบถามเป็นส่วนหนึ่งของดัชนีแฟ้มข้อมูล MongoDB โดยไม่ต้องดึงคำค้นหาแข่งขันทั้งหมดและกลับผลการค้นหาโดยใช้ดัชนีเดียวกัน

เพราะดัชนีอาศัยอยู่ใน RAM, การเข้าถึงข้อมูลมากกว่าที่จะอ่านข้อมูลได้เร็วขึ้นมากโดยการสแกนเอกสารจากดัชนี


ใช้แบบสอบถามดัชนีครอบคลุม

เพื่อทดสอบแบบสอบถามดัชนีหมวกใช้ชุดต่อไปของผู้ใช้:

{
   "_id": ObjectId("53402597d852426020000002"),
   "contact": "987654321",
   "dob": "01-01-1991",
   "gender": "M",
   "name": "Tom Benzamin",
   "user_name": "tombenzamin"
}

เราสร้างคอลเลกชันที่ผู้ใช้ดัชนีร่วมเพศภาคสนามและ user_name:

>db.users.ensureIndex({gender:1,user_name:1})

ตอนนี้ดัชนีจะครอบคลุมแบบสอบถามต่อไปนี้:

>db.users.find({gender:"M"},{user_name:1,_id:0})

นั่นคือสำหรับแบบสอบถามดังกล่าวข้างต้น MongoDB ไม่ได้ไปยื่นสำหรับฐานข้อมูล แต่มันสารสกัดจากข้อมูลจากดัชนีซึ่งเป็นแบบสอบถามข้อมูลที่รวดเร็วมาก

เนื่องจากดัชนีของเราไม่ได้รวมข้อมูล _id ที่ _id จะถูกส่งกลับโดยเริ่มต้นในแบบสอบถามที่เราสามารถมีสมาธิไม่รวมไว้ในผลการค้นหา MongoDB

ตัวอย่างต่อไปนี้จะไม่ได้ปกครอง _id แบบสอบถามจะไม่ได้รับการคุ้มครอง:

>db.users.find({gender:"M"},{user_name:1})

สุดท้ายหากแบบสอบถามต่อไปแบบสอบถามไม่สามารถใช้ครอบคลุมดัชนี:

  • ข้อมูลทั้งหมดดัชนีเป็นอาร์เรย์
  • ทุกเขตข้อมูลดัชนีย่อยเป็นเอกสารที่