Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB
MongoDB
  1. วิธีลบข้อมูลซ้ำออกจากคอลเลกชัน MongoDB

    การสร้างดัชนีแบบ Unique เพื่อป้องกันข้อมูลซ้ำ เพื่อป้องกันไม่ให้มีการแทรกข้อมูลซ้ำ ให้ตั้งค่า unique: true พร้อมกับตัวเลือก dropDups: true ตามรูปแบบด้านล่าง: db.yourCollectionName.ensureIndex({yourFieldName: 1}, {unique: true, dropDups: true}) ตัวอย่างการใช้งาน สร้างคอลเลกชันพร้อมเอกสารทดสอบ การแทรก

  2. วิธีหาค่าเฉลี่ย Rating ใน MongoDB โดยอิงจาก ID ที่ซ้ำกัน

    สำหรับการหาค่าเฉลี่ยใน MongoDB ให้ใช้ $avg มาสร้างคอลเล็กชันพร้อมเอกสารที่มี ID ซ้ำพร้อม Rating กันเถอะ > db.demo606.insertOne({id:1,rating:5}); { acknowledged : true, insertedId : ObjectId(5e972dfbf57d0dc0b182d623) } > db.demo606.insertOne({id:1,rating:4}); { acknowledged : true, insertedId

  3. การหาค่าที่ไม่ซ้ำกันภายในสองอาร์เรย์ในเอกสาร MongoDB เดียว

    เพื่อหาค่าที่ไม่ซ้ำกันภายในสองอาร์เรย์ในเอกสาร ให้ใช้ $setUnion ใน aggregate() ตัวดำเนินการ $setUnion รับอาร์เรย์สองอันขึ้นไปและคืนค่าอาร์เรย์ที่มีสมาชิกที่ปรากฏในอาร์เรย์ใดอาร์เรย์หนึ่ง มาสร้างคอลเล็กชันกันเถอะ >db.demo608.insertOne({ListOfName1:[John,Chris,Bob,David],ListOfName2:[Bob, Sam,John

  4. คำสั่ง MongoDB ลบอาร์เรย์ทั้งหมดออกจากคอลเล็กชัน

    เพื่อลบอาร์เรย์ทั้งหมดออกจากคอลเล็กชัน ให้ใช้ $unset ใน MongoDB มาสร้างคอลเล็กชันกันเถอะ > db.demo609.insertOne({ListOfSubject:[MySQL,MongoDB]}); { acknowledged : true, insertedId : ObjectId(5e974695f57d0dc0b182d62c) } > db.demo609.insertOne({ListOfSubject:[Java]}); { acknowledged : true, ins

  5. วิธีรวมยอดส่วนหนึ่งของอิลิเมนต์อาร์เรย์ใน MongoDB Aggregation

    เพื่อรวมยอดส่วนหนึ่งของอิลิเมนต์อาร์เรย์ ให้ใช้ $first ร่วมกับ $sum มาสร้างคอลเล็กชันกันเถอะ > db.demo610.insertOne({Values:[10,20,30,40,50]}); { acknowledged : true, insertedId : ObjectId(5e9747b8f57d0dc0b182d62e) } แสดงเอกสารทั้งหมดด้วยเมธอด find() > db.demo610.find().pretty() ผลลัพธ์ที่ได้

  6. วิธีเรียงลำดับเอกสารใน MongoDB 4 และแสดงเพียงฟิลด์เดียว

    เพื่อเรียงลำดับเอกสารใน MongoDB 4 ให้ใช้ sort() เพื่อแสดงเพียงฟิลด์เดียวที่เรียงแล้ว ให้ตั้งค่าเป็น 1 มาสร้างคอลเล็กชันพร้อมเอกสารกันเถอะ > db.demo611.insertOne({Name:Chris}); { acknowledged : true, insertedId : ObjectId(5e987110f6b89257f5584d83) } > db.demo611.insertOne({Name:Adam}); { ackno

  7. การดึงเอกสารเฉพาะหลายรายการใน MongoDB

    เพื่อดึงเอกสารเฉพาะหลายรายการใน MongoDB ให้ใช้ $in มาสร้างคอลเล็กชันกันเถอะ > db.demo593.insertOne({id:1,Name:Chris}); { acknowledged : true, insertedId : ObjectId(5e93177dfd2d90c177b5bcd9) } > db.demo593.insertOne({id:2,Name:John}); { acknowledged : true, insertedId : ObjectId(5e931785fd2d90

  8. คำสั่ง MongoDB อัปเดตเอกสารซ้อน (Nested Document)

    มาสร้างคอลเล็กชันพร้อมเอกสารกันเถอะ > db.demo595.insertOne( { Information: [ { _id: new ObjectId(), Name:Chris }, { _id:new ObjectId(), Name:Robert } ] } ); { acknowledged : true, insertedId : ObjectId(5e93369cfd2d90c177b5bce4) } แสดงเอกสารทั้งหมดด้วยเมธอด find() > db.demo595.find().p

  9. การดึงเอกสารเดียว (Single Document) ตามเกณฑ์ใน MongoDB

    ใช้ findOne() ใน MongoDB สำหรับกรณีนี้ คำสั่ง findOne() จะคืนค่าเอกสารหนึ่งรายการที่ตรงกับเกณฑ์การสืบค้นที่ระบุในคอลเล็กชัน มาสร้างคอลเล็กชันพร้อมเอกสารกันเถอะ > db.demo596.insertOne({_id:1,FirstName:John,LastName:Smith}); { acknowledged : true, insertedId : 1 } > db.demo596.insertOne({_id:2,

  10. ค้นหาเอกสาร MongoDB ที่มีสตริงเฉพาะเจาะจง

    เพื่อค้นหาว่าเอกสารใดมีสตริงเฉพาะเจาะจง ให้ใช้ $regex ร่วมกับ find() มาสร้างคอลเล็กชันกันเถอะ > db.demo597.insertOne({Name:John Doe}); { acknowledged : true, insertedId : ObjectId(5e947ae3f5f1e70e134e2690) } > db.demo597.insertOne({Name:John Smith}); { acknowledged : true, insertedId : Object

  11. การลบค่า (TotalPrice - Discount) จากค่าฟิลด์เอกสารใน MongoDB

    เพื่อลบค่าจากค่าฟิลด์เอกสาร ให้ใช้ $subtract ใน MongoDB aggregate() มาสร้างคอลเล็กชันกันเถอะ > db.demo599.insertOne({TotalPrice:250,DiscountPrice:35}); { acknowledged : true, insertedId : ObjectId(5e948192f5f1e70e134e2696) } > db.demo599.insertOne({TotalPrice:400,DiscountPrice:10}); { acknowl

  12. วิธีใช้ตัวแปรกำหนดเอง (Custom Variable) ขณะอัปเดตเอกสาร MongoDB

    เพื่ออัปเดต ให้ใช้ update() และไวยากรณ์สำหรับสร้างและใช้ตัวแปรตัวอย่างดังนี้ var anyVariableName=yourValue; db.yourCollectionName.update({filter},{$set:{yourFieldName:yourVariableName}}); มาสร้างคอลเล็กชันกันเถอะ > db.demo600.insertOne({id:1,Name:Robert}); { acknowledged : true, insertedId : Obj

  13. การสร้างผู้ใช้ใหม่และตั้งค่าบทบาท (Role) ใน MongoDB

    สำหรับกรณีนี้ ให้ใช้ userAdminAnyDatabase เนื่องจากให้สิทธิ์ครบเหมือนแอดมิน ไวยากรณ์ดังนี้ use admin db.createUser( { user: yourUserName, pwd: yourPassword, roles: [ { role: yourRoleName, db: yourDatabaseName } ] } ) ตัวอย่างการสร้างผู้ใช้ด้วยบทบาท userAdminAnyDataba

  14. คำสั่ง MongoDB หาค่าเฉลี่ย (Average) ใน Aggregation ของอิลิเมนต์อาร์เรย์

    เพื่อหาค่าเฉลี่ยขององค์ประกอบอาร์เรย์ ให้ใช้ $avg มาสร้างคอลเล็กชันกันเถอะ > db.demo584.insertOne({Marks:[75,50,85,60,80]}); { acknowledged : true, insertedId : ObjectId(5e91d827fd2d90c177b5bcc2) } แสดงเอกสารทั้งหมดด้วยเมธอด find() > db.demo584.find().pretty(); ผลลัพธ์ที่ได้ { _id : ObjectId(

  15. วิธีสร้างอ็อบเจกต์จากกลุ่มข้อมูล (Project Grouping) และแสดงเฉพาะฟิลด์ Marks ใน MongoDB

    มาสร้างเอกสารก่อน > var document= [ { SubjectName : MySQL, Marks : 78 }, { SubjectName : MongoDB, Marks : 89 }, { SubjectName : Java, Marks : 71 }, ]; คำสั่งแสดงเอกสาร > printjson(document); ผลลัพธ์ที่ได้ [ { SubjectName : MySQL, Marks : 78 }, { SubjectName : MongoDB, Mark

Total 1351 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:4/68  20-คอมพิวเตอร์/Page Goto:1 2 3 4 5 6 7 8 9 10